2010-09-28 3 views

ответ

3

У вас проблема с SQL-инъекцией в сценарии на стороне сервера. Проблема не имеет ничего общего с TinyMCE; одно текстовое поле будет подвергать ту же проблему.

Это серьезная проблема безопасности. Вам нужно SQL-string-literal-escape каждый фрагмент текста, который вы помещаете в SQL-запрос. Лучше использовать параметризованные запросы, чтобы текстовые значения напрямую не добавлялись в запросы.

Как вы выполняете SQL-запрос или параметризованные запросы зависит от того, какой язык программирования на стороне сервера вы используете. (например, для PHP см. mysql_real_escape_string, mysqli_bind_param или PDOStatement->execute с аргументом параметров.)

+0

это должно быть ... mysql_real_escape_string * для строк и явного типа каста для чисел * ... –

+0

@bobince, большое спасибо !!! – Zebra

+0

@Col. Шрапнель, спасибо! – Zebra

3

При написании переменной на PHP обязательно используйте переменную addslashes. Например;

$text = addslashes($_POST['text']); 

Это будет работать. Мне потребовалось пару дней, чтобы понять это. Я надеюсь, что это помогает.

Смежные вопросы