Я относительно новичок в программировании с использованием php и ajax, поэтому, пожалуйста, выслушайте меня.
Это мой код jQuery / ajax:
function change2(radio){
section = $('input[type=radio][name=section]:checked').prop('id');
$.ajax({
url: './templates/teacherIndex4.php',
type: 'GET',
data: {'grade': grade, 'section': section},
dataType: 'json',
success: function (res) {
console.log(res);
if(res.status == "ok") {
document.getElementById("listStud").innerHTML = "Test";
}
},
error: function(error) {
console.log(error);
}
});
}
Я уже проверил оценкуи переменные раздела, и они в порядке.Это мой php-код:
if (isset($_GET['grade']) && isset($_GET['section'])) {
$grade = $_GET['grade'];
$section = $_GET['section'];
$recent_year = (int)date("Y");
$recent_month = (int)date("n");
if ($recent_month < 6){
$recent_year = $recent_year - 1;
}
$next_year = (int)$recent_year + 1;
$schoolyear = "S.Y. " . $recent_year . " - " . $next_year;
$sy = "select * from schoolyear where schoolYear = '$schoolyear'";
$syRes = mysqli_query($conn, $sy);
$schoolyearid = mysqli_fetch_array($syRes);
$schoolyear = $schoolyearid['schoolyear_id'];
$query = "select * from student where schoolyearid_fk = '$schoolyear' and gradeid_fk = '$grade' and sectionid_fk = '$section'";
$userinfo = mysqli_query($conn, $query);
$res = array();
while($line = mysqli_fetch_assoc($userinfo)){
$res[] = $line;
}
$res['status'] = "ok";
print json_encode($res);
}
Моя проблема в том, что она возвращает это в функции ошибки: Изображение журнала консоли
Я попытался изменить dataType на 'text ', и он возвращает пустой ответ, но в функции успеха (попытка получить res.status возвращает неопределенное значение).
Я также пробовал print json_encode($line)
и echo json_encode($line)
, и, похоже, возвращаетинформация, которую я искал (здесь: данные с разбитыми настоящими именами )
Может кто-нибудь помочь мне с этим?Это для моего сольного исследования, и я не знаю, как решить эту проблему.
EDIT - Все коды до function change2(radio)
(в файле js):
var grade;
function drop(x){
y = x.toString();
id = "id" + y;
$('#' + id).toggle("slow");
if ($('#' + y).hasClass('active')){
$('#' + y).removeClass('active');
} else {
$('#' + y).addClass('active');
}
}
function drop2(){
$('#subhand').toggle("slow");
if ($('#subhand').hasClass('active')){
$('#subhand').removeClass('active');
} else {
$('#subhand').addClass('active');
}
}
function change(radio) {
if (radio.checked && radio.id === "1") {
document.getElementById("sections").innerHTML = "<input type='radio' id='1' name='section' onclick='change2(this)'>Emerald <input type='radio' id='2' name='section' onclick='change2(this)'>Jade <input type='radio' id='3' name='section' onclick='change2(this)'>Ruby ";
grade = 1;
} else if (radio.checked && radio.id === "2"){
document.getElementById("sections").innerHTML = "<input type='radio' id='4' name='section' onclick='change2(this)'>Dahlia <input type='radio' id='5' name='section' onclick='change2(this)'>Kamia <input type='radio' id='6' name='section' onclick='change2(this)'>Rosal ";
grade = 2;
} else if (radio.checked && radio.id === "3"){
document.getElementById("sections").innerHTML = "<input type='radio' id='8' name='section' onclick='change2(this)'>Sodium <input type='radio' id='9' name='section' onclick='change2(this)'>Potassium <input type='radio' id='7' name='section' onclick='change2(this)'>Lithium ";
grade = 3;
} else if (radio.checked && radio.id === "4"){
document.getElementById("sections").innerHTML = "<input type='radio' id='11' name='section' onclick='change2(this)'>Neutron <input type='radio' id='10' name='section' onclick='change2(this)'>Electron <input type='radio' id='12' name='section' onclick='change2(this)'>Proton ";
grade = 4;
} else if (radio.checked && radio.id === "5"){
document.getElementById("sections").innerHTML = "<input type='radio' id='13' name='section' onclick='change2(this)'>Block A <input type='radio' id='14' name='section' onclick='change2(this)'>Block B <input type='radio' id='15' name='section' onclick='change2(this)'>Block C ";
grade = 5;
} else if (radio.checked && radio.id === "6"){
document.getElementById("sections").innerHTML = "<input type='radio' id='16' name='section' onclick='change2(this)'>Block A <input type='radio' id='17' name='section' onclick='change2(this)'>Block B <input type='radio' id='18' name='section' onclick='change2(this)'>Block C ";
grade = 6;
}
}
РЕДАКТИРОВАТЬ 2 - вкладка Network (в инструментах разработчика): Вкладка Network приводит к инструментам разработки