Я новичок в создании AJAX, веб-страница, которую я пытаюсь сделать, - это динамические комбинированные списки, предполагается выбрать врача из базы данных, а затем в следующем комбинированном списке должны появиться расписания.
Но проблема в том, что когда я выбираю врача, там не отображается расписание, я не знаю, что не так с моей веб-страницей, я надеюсь, что кто-то может помочь мне с этим.
Код:
function getHorarios(){
$mysqli = getConn();
$id = $_POST['rut'];
$query = "SELECT rutemple FROM empleado WHERE rutemple = (SELECT hora FROM horario WHERE rut = '$id')";
$result = $mysqli->query($query);
$horarios = '<option value="0">Elige una opción</option>';
while($row = $result->fetch_array(MYSQLI_ASSOC)){
$horarios .= "<option value='$row[id]'>$row[hora]</option>";
}
return $horarios;
}
Вот таблица horario:
CREATE TABLE `horario` (
`id` int(11) NOT NULL,
`hora` varchar(30) NOT NULL,
`rut` varchar(12) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
и таблица empleado:
CREATE TABLE `empleado` (
`rutemple` varchar(12) NOT NULL,
`nombre` varchar(25) DEFAULT NULL,
`apellido` varchar(25) DEFAULT NULL,
`fnac` date DEFAULT NULL,
`direccion` varchar(25) DEFAULT NULL,
`ciudad` varchar(25) DEFAULT NULL,
`telefono` decimal(9,0) DEFAULT NULL,
`cargo` int(11) DEFAULT NULL,
`especialidad` int(10) DEFAULT NULL,
`clave` varchar(25) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
И вот изображение проблемы, которое у меня есть:
![Problem](https://i.stack.imgur.com/pehFf.png)
![enter image description here](https://i.stack.imgur.com/uBJf8.png)
Когда мне нужно выбрать врача, он должен загрузить доступные графики, которые он / она имеет.
AJAX код:
$(document).ready(function(){
$.ajax({
type: 'POST',
url: 'php/cargar_doct.php'
})
.done(function(doctors){
$('#doctores').html(doctors)
})
.fail(function(){
alert('Hubo un errror al cargar las doctores')
})
$('#doctores').on('change', function(){
var id = $('#doctores').val()
$.ajax({
type: 'POST',
url: 'php/cargar_horas.php',
data: {'id': id}
})
.done(function(doctors){
$('#horitas').html(doctors)
})
.fail(function(){
alert('Hubo un errror al cargar las horas')
})
})
})
Содержание таблицы Horario:
![enter image description here](https://i.stack.imgur.com/GUN2K.png)
Содержание таблицы Empleado:
![enter image description here](https://i.stack.imgur.com/s9zCc.png)
function getDocts(){
$mysqli = getConn();
$query = "SELECT nombre, apellido FROM empleado WHERE especialidad = '3' ORDER BY rutemple";
$result = $mysqli->query($query);
$listas = '<option value="0">Elige una opción</option>';
while($row = $result->fetch_array(MYSQLI_ASSOC)){
$listas .= "<option value='$row[rutemple]'>$row[nombre] $row[apellido]</option>";
}
return $listas;
}