2014-02-21 2 views
0

Я только начал помогать на сайте, где есть раздел администратора, который позволяет владельцу сайта вводить текст для отображения на сайте. У них есть проблема при добавлении текста с апострофами, потому что он нарушает инструкцию PHP. Я посмотрел на использование команды mysql_real_escape_string, но не уверен, что лучший способ ее использовать. Исходный код приведен ниже. Любые предложения были бы замечательными!Вставить текст с помощью Apostrophe в MySQL

<textarea name="descr" cols="76" rows="5" id="descr" tabindex="5" onBlur="this.value=removeMSWordChars(this.value);"> 
    <?php echo $data['descr']; ?> 

    </textarea> 
    <script type="text/javascript"> 
     CKEDITOR.replace('descr'); 
    </script> 
    </td> 

ответ

1

Читайте о Prepared Statements, они позволяют:

  • сделать ваш код безопасным против SQL injection атак
  • Вставьте любой символ легко в базу данных, не заботясь о побеге.

Вы, кажется, до сих пор используют MySQL-расширения (один с mysql_query): Обратите внимание, что это расширение является устаревшим и не поддерживает Подготовленные заявления. Вы должны переключиться на PDO или MySQLi, ссылка наверху объясняет, как это сделать.

+1

Комикс на самом деле ничего не добавляет к вашему ответу, особенно при работе с новичком. – Marty

+0

@Marty Возможно, вы правы, удалили его. Я думал, что это поможет понять опасность. – TimWolla

+0

Я бы отказался от этого downvote, если бы он был моим, к сожалению, это не так. – Marty

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