Я пытаюсь создать PHP-логин для своего университетского веб-сайта, где я хочу, чтобы пользователь входил под своим именем пользователя.
Я пытаюсь этот запрос в MySQL с подготовленными заявлениями, но его выдача ошибка, как число параметров превышает. Это дает правильную ошибку, и я знаю, что я вызываю любую проблему / проблему где-то.
$user_roll = $_SESSION['roll'];
$stmt = $conn->prepare("SELECT roll, name, course, semester FROM students WHERE roll = ?
");
$stmt->bind_param('isssi',$roll,$name,$course,$semester,$user_roll);
Вы делаете смесь ->bind_param()
а также bind_result()
. Вам нужен только 1 параметр ($user_roll
) в ->bind_param()
, а остальные будут использованы в ->bind_result()
после вашего ->execute()
, например —
$user_roll = $_SESSION['roll'];
$stmt = $conn->prepare("SELECT roll, name, course, semester FROM students WHERE roll = ?");
$stmt->bind_param('i',$user_roll);
$stmt->execute();
$stmt->bind_result($roll,$name,$course,$semester);
while($stmt->fetch()){
echo $roll."<br />";
echo $name."<br />";
echo $course."<br />";
echo $semester;
}
Других решений пока нет …