📌 Introducción
Crear un sistema de citas médicas en PHP y MySQL es un proyecto práctico ideal para consultorios, clínicas pequeñas o como proyecto universitario. En este tutorial aprenderás a desarrollar un sistema funcional con registro de pacientes, selección de fechas, y almacenamiento en base de datos.
🗃️ Estructura de la Base de Datos
CREATE TABLE pacientes (
id INT AUTO_INCREMENT PRIMARY KEY,
nombre VARCHAR(100),
email VARCHAR(100),
telefono VARCHAR(15)
);
CREATE TABLE citas (
id INT AUTO_INCREMENT PRIMARY KEY,
id_paciente INT,
fecha DATE,
hora TIME,
motivo TEXT,
FOREIGN KEY (id_paciente) REFERENCES pacientes(id)
);
🧱 Funcionalidades del sistema
-
Registro de pacientes
-
Asignación de citas
-
Validación de disponibilidad
-
Listado y eliminación de citas
-
Visualización por calendario (opcional con FullCalendar.js)
👨💻 Fragmento de código en PHP para registrar cita
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$id_paciente = $_POST['id_paciente'];
$fecha = $_POST['fecha'];
$hora = $_POST['hora'];
$motivo = $_POST['motivo'];
$sql = "INSERT INTO citas (id_paciente, fecha, hora, motivo) VALUES (?, ?, ?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("isss", $id_paciente, $fecha, $hora, $motivo);
if ($stmt->execute()) {
echo "Cita registrada con éxito.";
} else {
echo "Error al registrar la cita.";
}
}
🖼️ Interfaz sugerida
-
Formulario de registro de paciente
-
Formulario de creación de cita con select de paciente
-
Tabla de citas próximas
-
Botón para cancelar cita
🔄 Mejora opcional
Puedes integrar FullCalendar.js o SweetAlert2 para una mejor experiencia visual y también agregar autenticación para médicos y pacientes.
🎁 Recursos extra
-
Puedes exportar citas a PDF o enviar confirmación por correo usando
PHPMailer. -
Agregar notificaciones en tiempo real con AJAX.