HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #7  
Старый 03.03.2010, 10:14
fokinkostya
Новичок
Регистрация: 28.02.2010
Сообщений: 11
Провел на форуме:
23573

Репутация: 0
Отправить сообщение для fokinkostya с помощью ICQ
По умолчанию

Потому что много ошибок.
Рекомендуется экранировать кавычками.

PHP код:
<?php
$query 
'INSERT INTO `guestbook` (`message`, `email`, `name`, `city`) VALUES ("'.$message.'", "'.$email.'", "'.$name.'", "'.$city.'")';
if (!
mysql_query($query)) {
    echo 
"не могу добавить запись в базу данных";
}
?>
Геморойно конечно ставить везде кавычки, но тогда проблем будет гораздо меньше. Экранирование ` используется только для имен таблиц, баз данных, ячеек. Двойные или одинарные кавычки используются для значений. ` - помогает избежать не желательного вызова служебных функций и т.п. Одинарные и двойные кавычки дают возможность вставки различных значений (нет пересечения с служебными функциями, при вставке значения с пробелом вставка будет происходить без ошибки и т.п.).

Опять же надо вырабатывать определенные правила для себя и определенный стиль форматирования.

Так же ошибка может происходить в случае, если в таблице есть поля, не указанные в запросе, для которых не указано значение по умолчанию.

Последний раз редактировалось fokinkostya; 03.03.2010 в 10:17..
 
Ответить с цитированием
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ