2010-06-18 2 views
4

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

Просьба предложить.

Спасибо

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

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

db_query ($ sql);

ответ

5

Оберните свой стол {}.

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

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

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

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

Пример:

db_query('INSERT INTO {tablename} (field1, field2) VALUES ("%s", "%s")', $field1, $field2); 
Смежные вопросы