У меня есть следующий код:
Код: Выделить всё
$connection = mysqli_connect('...');
if(mysqli_connect_errno()) {
die('Connect Error');
}
$connection->set_charset("utf8");
$success = $connection->query("INSERT INTO hilde_entrys (Comment, Refer_ID, Account_Adress) VALUES ('".$_POST["comment"]."','".$GET["id"]."','".$userData["user_address"]."')");
$success->store_result(); //I did this as it helped some people - it didn´t help me :(
$rows = $success->num_rows;
while($row = $success->fetch_row()) { //This whole while-loop helped some other guy on stackoverflow - not me
$rows = $success->num_rows; //Incrementing by 1 each time
}
$rows = $success->num_rows; // Finally the total count
if ($rows > 0) { //What I actually intended to do with the num_rows...
$success->free();
$success->close();
$connection->close();
} else {
$success->free();
$success->close();
$connection->close();
die("Query failed.");
}
Заранее спасибо за все ваши ответы,
VicStudio
Да, кстати: даже когда я удаляю $success->free(); это ничего не меняет с помощью num_rows....
EDIT : Ребята, после того, как вы сказали мне, что INSERT не возвращает ни одной строки, как я могу проверить, успешен ли запрос?
ЕЩЕ ОДНО ИЗМЕНЕНИЕ: Во-первых, кто-то посоветовал мне использовать effect_rows вместо num_rows, что я вполне понимаю. Каким-то образом это все равно не сработало, поэтому один из вас попросил меня активировать отчет об ошибках в моем php-скрипте, и теперь я получил следующие два сообщения об ошибках (одно уведомление и одно фатальная ошибка):
Примечание: попытка получить свойство необъекта на (моей веб-странице) в строке XX
Неустранимая ошибка: вызов функция-член close() для необъекта на (моей веб-странице) в строке XX
Уведомление относится к строке $rows = $success->affected_rows; ( Я заменил на это $rows = $success->num_rows). (Я прокомментировал цикл while).
Вторая ошибка, из-за которой экран гаснет, относится к $success->close();, той, что в else -пункт. Это означает, что
а) он не обнаруживает, ЧТО что-то было изменено, и
б) что у него возникла проблема с закрытием запроса.
Может кто-нибудь объяснить мне, почему? Я проверил свою базу данных, и запрос INSERT удался, поэтому он должен был перейти в if, а не в else. И почему он не хочет, чтобы я закрыл запрос? Я предполагаю, что обе эти ошибки как-то связаны друг с другом. Заранее спасибо, ребята. Извините, что между моим новым постом прошло много времени, но нужно время, чтобы разобраться и особенно записать это.
Подробнее здесь: https://stackoverflow.com/questions/450 ... sert-query
Мобильная версия