【问题标题】:Escaping characters in PHP and retaining在 PHP 中转义字符并保留
【发布时间】:2013-10-23 14:40:20
【问题描述】:

我有一个 PHP 应用程序,我从多个来源(API、文件等)获取名字和姓氏 假设我得到像john'john" 这样的名称,我如何将名称保存在数据库中,'," 可以在任何地方,问题是当我编写查询时像

Insert into table values('".$a."');

所以如果 $a 包含姓名 John' 则查询变为 Insert into table values('John''); 这是错误的,( 2 ' at the end) 如何在 PHP 中满足这些情况?

【问题讨论】:

标签: php mysql insert escaping mysql-real-escape-string


【解决方案1】:
$string=mysqli_real_escape_string($connection,$string);

此函数用于创建一个合法的 SQL 字符串,您可以在 SQL 语句中使用它。考虑到连接的当前字符集,给定的字符串被编码为转义的 SQL 字符串。

Reference

【讨论】:

  • 那么它应该在数据库中保留 John' 吗?
  • 是的,它会保留它
  • 它把它转换成 John/'
  • 不,不是,你为什么不试试呢?它将被保存为 John'
猜你喜欢
  • 1970-01-01
  • 2014-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多