Я рассмотрел некоторые другие ответы здесь относительно этого, но я продолжаю получать ошибки, поэтому здесь идет.PHP PDO выберите запись из базы данных, которая соответствует переменной
Когда пользователь посещает сайт, им предлагается указать свое имя и назначить случайное целое число. Когда они нажимают кнопку submit для ввода своего имени, форма отправляется и сохраняется в базе данных, и пользователь перенаправляется обратно на главную страницу. Если случайное число еще раз совпадает с номером, сохраненным в базе данных, это имя будет отображаться.
У меня нет проблем с введением значений в базу данных, но у меня возникают проблемы с их возвратом.
Мое соединение с базой данных в порядке, просто оставленные значения общие для этого вопроса.
<?php
$min=1;
$max=100;
$rand_number = rand($min,$max);
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
//Set PDO Error Mode to Exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//Prepare SQL
$stmt = $conn->prepare("select nickname from users where number=".$rand_number);
$stmt->execute();
if (!$stmt) {
foreach($result as $row) {
echo $row['nickname'];
}
}
}
?>
Я получаю сообщение об ошибке, что что-то не так вокруг части, где я сопоставляю запрос с переменной.
И это сообщение об ошибке было бы ...? – Phil
Вы вставляете данные в базу данных с помощью случайного числа, и теперь вы пытаетесь выбрать из БД другое случайное число. См. Проблему? Это два случайных числа. Как они должны быть одинаковыми? –
Откуда возникает '$ result? И ваш оператор 'if' корректен -« если запрос не сработает, а затем проведите через результирующий набор »? –