Я недавно начал изучать подготовленные операторы и начал настраивать мои сценарии в новом стиле.
Однако я наткнулся на маленькую стенку и надеюсь, что кто-нибудь может указать мне правильное направление?
Вот моя структура SQL-запроса:
$query = "SELECT `results`, `Success`, `Failure`, `Counter`, `Grades`, `Classes`,
`Special_Id`, `SpecialCondition` FROM `Courses` INNER JOIN `Students` ON `id` =
`Students_Id` JOIN `Conditions` ON `id` = `Special_Id`";
$stmt = $Mconn->prepare($query);
$stmt->bind_result($results, $success, $failed, $counter, $grades, $classes,
$specialId, $specialcondition);
$stmt->execute();
$stmt->store_result();
А вот один блок кода:
<?php
echo "<select = \"SpecialConditions\">";
if($stmt->num_rows == NULL){
echo "No results found.";
}else{
while($stmt->fetch()){
echo "<option value=\"$specialId\">$specialcondition</option>";
}
}
echo "</select>";
?>
И еще один блок кода:
<?php
echo "<select = \"Grades\">";
if($stmt->num_rows == NULL){
echo "No results found.";
}else{
while($stmt->fetch()){
echo "<option value=\"".$grades."\">".$grades."</option>";
}
}
echo "</select>";
?>
Хорошо, теперь, что происходит, если я помещу оба этих запроса на одну и ту же страницу, первый блок уничтожит второй, а другой запрос под ним, и я не могу понять, почему, и я исследовал это, нет конец.
Я пытался закрыть соединение в том же блоке кода, думая, что это может сработать, но без победы.
Теперь я знаю, что соединение с БД работает, и я знаю, что возвращенные результаты на самом деле сохраняются, потому что, если я проверяю каждый блок на отдельной странице, он работает так, как должен.
Заранее благодарю за помощь.