Я действительно вытягиваю свои волосы на этом. У меня есть простая секция комментариев по моему встроенному php-приложению, и я просто хочу добавить новую строку, если поймаю параметр $ _GET. Но независимо от того, как я создаю запрос на вставку MySQL, я получаю сообщение об ошибке.Ошибка PHP MySQL на INSERT
Это то, что я до сих пор:
if(isset($_GET['r'])){
$replyid = mysql_real_escape_string($_GET['r']);
$sentnow = date("Y-m-d H:i:s");
mysql_query("INSERT INTO eis_inbox (messageid, toid, from, contact, seen, message, date) VALUES (NULL, '".$replyid."', 'TESTUSER', 'CONTACTINFO', '0', 'MESSAGE', '".$sentnow."'") or die(mysql_error());
echo '<meta http-equiv="refresh" content="0;/messages">';
}
Мои MySQL DB поля называются точно так же: MessageId (auto_increment), toid (int11), из (varchar255), контакты (varchar255), видно (int3), сообщение (текст) и дату (временная метка/CURRENT_TIMESTAMP).
Выполнение выше страницы с скажем «index.php г = 777?» Следует, как я это вижу, заполнить мой MySQL с новой строки как таковой:
messageid = (AUTO_INCREMENT)
toid = 777
from = TESTUSER
contact = CONTACTINFO
seen = 0
message = MESSAGE
date = 2013-01-17 11:50:01
Вместо этого, я получаю следующее ошибка:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from, contact, seen, message, date) VALUES (NULL, '1', 'TESTUSER', 'CONTACTINFO'' at line 1
Аналогичная ошибка с "error_reporting (E_ALL)".
Я изучил это уже несколько дней, и я просто не могу найти ошибку ... Возможно, я слепой и пропуская запятую или закрывающий тег или что-то в этом роде. Есть идеи?
Пожалуйста, не используйте mysql_ * функции в новом коде. Они больше не поддерживаются и официально устарели. Узнайте о подготовленных инструкциях вместо этого, используйте PDO или MySQLi – Afsar
Я не уверен, является ли $ replyid int в вашей базе данных, но если это так, вы не должны использовать символы «вокруг». (только для строк) –
Убедитесь, что тип данных для видимого поля является либо varchar, либо удаляет '' вокруг значения для него. – Kao