Извиняюсь за легкий вопрос!
Но как правильно все таки написать?
1. Максим21 - 23 Сентября, 2010 - 15:43:52 - перейти к сообщению
2. SAD - 23 Сентября, 2010 - 15:47:46 - перейти к сообщению
$q = mysql_query("INSERT.....");
if($q)
echo 'все гуд';
if($q)
echo 'все гуд';
3. Максим21 - 24 Сентября, 2010 - 18:50:26 - перейти к сообщению
SAD пишет:
$q = mysql_query("INSERT.....");
if($q)
echo 'все гуд';
if($q)
echo 'все гуд';
Да так, не успев внести данные он сразу пишет гуд, потому мне и не понятно.
4. SAD - 24 Сентября, 2010 - 22:49:55 - перейти к сообщению
Он не вносит или вносит пустые значения?
5. garvey - 25 Сентября, 2010 - 06:56:51 - перейти к сообщению
mysql_insert_id();
Возвращает id записи, если она прошла успешно.
Возвращает id записи, если она прошла успешно.
6. JustUserR - 25 Сентября, 2010 - 23:47:11 - перейти к сообщению
Максим21 пишет:
При осущественни подачи SQL-запросов которые не производят определенной выборки информации или показа состояний переменных так как SELECT или SHOW - функция mysql_query всегда будет возвращать истинное значение и для проверки успешности реализуемого запроса необходимо применять характеризующие его средства - в частности если имеется поле автоинкремента то возможен просмотр параметра таблицы хранящий его значение
Да так, не успев внести данные он сразу пишет гуд, потому мне и не понятно.
7. zardoz - 26 Сентября, 2010 - 01:13:49 - перейти к сообщению
Со своей стороны, предложил бы более универсальную команду - mysql_affected_rows().
Она покажет как число вставленных строк (при INSERT), так и число обновленных строк при UPDATE. Возвращает "-1" при ошибке.
С уважением.
Она покажет как число вставленных строк (при INSERT), так и число обновленных строк при UPDATE. Возвращает "-1" при ошибке.
С уважением.
8. JustUserR - 27 Сентября, 2010 - 00:54:09 - перейти к сообщению
zardoz пишет:
Предложенная вами функция mysql_affected_rows предоставляет информация по SQL-запросам содержащим операции изменения данных в таблице и в частности число прошедших модификацию строк - таким образом для унификации проверки правильности SQL-запросов в частности в собственном классе реализации работы с БД - возможно использовать гибридный подхов с применением данном функции и указанной выше методики одновременно
Со своей стороны, предложил бы более универсальную команду - mysql_affected_rows().
9. zardoz - 27 Сентября, 2010 - 23:58:30 - перейти к сообщению
Цитата:
mysql_affected_rows() возвращает количество рядов, затронутых последним INSERT, UPDATE, DELETE запросом к серверу, на который ссылается указатель link_identifier. Если ресурс не указан, функция использует последнее, успешное соединение, выполненное с помощью функции mysql_connect().
...
Если последний запрос был неудачным, функция вернёт -1.
...
Если последний запрос был неудачным, функция вернёт -1.
JustUserR, вы думаете что может возникнуть ситуация когда mysql_affected_rows() не отработает ошибку, а mysql_insert_id() укажет на нее? Если нет, то зачем учитывать частный случай в контексте общего, создавая этот не нужный гибридный подход?
С уважением.
10. vlom - 26 Ноября, 2010 - 14:17:13 - перейти к сообщению
А почему бы не использовать вот такой запрос???
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- if ($result == true) {
- echo "<p>Новая запись успешно добавлена</p>";
- } else echo "<p>Произошла ошибка при добавлении новой записи</p>";
- ?>