Ошибка синтаксиса MySQL - лишние глаза? - PullRequest
0 голосов
/ 17 октября 2011

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

mysql_query("INSERT INTO emails (to, from, subject, content, ip) VALUES('$email_to', '$email_from', '$subject', '$content', '$ip' ) ") 

Спасибо! * * 1004

РЕДАКТИРОВАТЬ: Ошибка

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 ''to', 'from', subject, content, ip) VALUES('[MY EMAIL ADDRESS]', 'l', 'hi', ' at line 1

РЕДАКТИРОВАТЬ 2:

Я продезинфицировал.

$email_to = mysql_real_escape_string($_POST['email_to']);
$email_from = mysql_real_escape_string($_POST['email_from']);
$subject = mysql_real_escape_string($_POST['subject']);
$content = mysql_real_escape_string($_POST['content']);

Ответы [ 2 ]

4 голосов
/ 17 октября 2011

Попробуйте это:

mysql_query(
    "INSERT INTO emails (`to`, `from`, subject, content, ip) 
    VALUES('$email_to', '$email_from', '$subject', '$content', '$ip' )") 

Я думаю, что ошибка возникает потому, что from является зарезервированным словом ... обратные помехи должны решить эту проблему.
Помните, что вы ДОЛЖНЫ всегдаочистить ввод данных пользователем, чтобы избежать внедрения SQL !!

1 голос
/ 17 октября 2011

Возможно экранировать поле 'from', так как from является ключевым словом;

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