【问题标题】:Best order between stripslashes, utf8_decode, mysql_real_escape_string?stripslashes、utf8_decode、mysql_real_escape_string 之间的最佳顺序?
【发布时间】:2013-02-19 15:51:08
【问题描述】:

如果我需要在 PHP 中使用这些函数,最好的顺序是什么:stripslashes、utf8_decode 和 mysql_real_escape_string。

实际上 somme \\ 出现例如:Francois\'s Farm。

谢谢。

【问题讨论】:

  • 你不应该在新代码中使用mysql_* 函数,所以真的没有答案。使用参数化查询。
  • 你真的不需要它们中的任何一个。禁用magic_quotes,设置mysql数据库连接为UTF8(还需要为数据库、表、列设置UTF8编码),使用PDO代替mysql_*

标签: php mysql-real-escape-string utf8-decode stripslashes


【解决方案1】:

简单

  • stripslashes 必须应用在脚本的最顶部,on the all superglobal arrays, only if magic quotes are on
  • utf8_decode - 从不
  • mysql_real_escape_string 仅适用于字符串您将要插入到查询中,就在这个插入之前。
    如果您不打算在查询中插入任何字符串文字 - 您也不需要此函数。

实际上somme \ 出现例如:Francois\'s Farm。

所以,这里是问题 #1。
如上面的链接所示,关闭魔术引号或运行带斜杠。

【讨论】:

    猜你喜欢
    • 2012-11-11
    • 1970-01-01
    • 2010-12-04
    • 2020-01-26
    • 1970-01-01
    • 2010-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多