将带有Apostrophe的文本插入MySQL

时间:2014-02-21 00:48:40

标签: php mysql

我刚开始帮助一个网站,其中有一个管理部分,允许网站所有者输入要在网站上显示的文字。添加带有撇号的文本时会出现问题,因为它会破坏PHP语句。我已经看过使用mysql_real_escape_string命令,但不确定使用它的最佳方法。原始代码如下。任何建议都会很棒!

<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 个答案:

答案 0 :(得分:1)

了解Prepared Statements,他们允许您:

  • 使您的代码免受SQL injection攻击
  • 轻松地将任何字符插入数据库,而无需担心转义。

您似乎仍在使用MySQL扩展程序(带有mysql_query的扩展程序):请注意,此扩展程序已弃用,不支持预准备语句。您应切换到PDOMySQLi,顶部的链接说明如何操作。