Проблемы с моим подготовленным обновлением заявления - PullRequest
0 голосов
/ 17 ноября 2009
$query = "UPDATE kids_entry SET entries=? WHERE parentsemail=?";
$stmt1 = mysqli_prepare($connection, $query);
mysqli_stmt_bind_param($stmt1, 'is',$entries,$parentsemail);
mysqli_execute($stmt1);
if(mysqli_stmt_affected_rows($stmt1) != 1)
    die("issueasdass"); 
mysqli_stmt_close($stmt1);

Приведенный выше код работает для меня на другой странице, но я не могу заставить его работать здесь. На другой странице набор для обновления жестко запрограммирован и не является динамическим, поэтому может быть, поэтому он не работает для меня. Может кто-нибудь сказать мне, что я делаю не так? Спасибо

Ответы [ 2 ]

0 голосов
/ 17 ноября 2009

Кажется, проблема решена сама собой. Ничего не изменилось, но теперь это работает!

0 голосов
/ 17 ноября 2009

Возможно ли, что записи имеют то же значение, что и то, что уже есть в базе данных?Я не думаю, что *_affected_rows возвращает 1, если ничего не меняется.Возможно ли, что для «parentsemail» существует более 1 записи?Так что, возможно mysqli_stmt_affected_rows возвращает что-то вроде 2?Вместо проверки 1, возможно, дайте нам знать, что mysql_stmt_affected_rows возвращает.Например, из документов:

Целое число больше нуля указывает количество затронутых или найденных строк.Ноль указывает, что ни одна запись не была обновлена ​​для оператора UPDATE / DELETE, ни одна строка не соответствует предложению WHERE в запросе или что еще не было выполнено ни одного запроса. -1 означает, что запрос вернул ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...