Предотвращение Drupal SQL-атак и обработка апострофа в Forms - PullRequest
4 голосов
/ 18 июня 2010

в типичных PHP-приложениях я использовал mysql_real_escape_string до того, как вставлял SQL. Однако я не могу сделать это в Drupal, поэтому мне потребуется некоторая помощь. И без какой-либо подобной функции пользовательский ввод с апострофами нарушает мой код.

Пожалуйста, предложите.

Спасибо

Мой SQL выглядит следующим образом:

$ sql = "INSERT INTO some_table (field1, field2) VALUES ('$ field1', '$ field2')";

db_query ($ SQL);

1 Ответ

5 голосов
/ 18 июня 2010

Оберните вашу таблицу {}.

Также используйте правильный синтаксис для вставки, например% d для чисел,% s для строк.

Вот страница API функции:

http://api.drupal.org/api/function/db_query/6

Обратите внимание, что у него есть аргументы.

Пример:

db_query('INSERT INTO {tablename} (field1, field2) VALUES ("%s", "%s")', $field1, $field2);
...