【发布时间】:2010-11-25 10:20:47
【问题描述】:
我有一个要求用户名的注册系统。有些人的姓氏中有撇号,这会阻止数据写入 MySQL 数据库表(例如 O'Hare)。
我正在使用 mysql_real_escape_string 从字符串中删除撇号。这很好,除非我需要对 Web 服务使用带有撇号的值,否则 Web 服务将返回 false。
我想我可以在使用 mysql_real_escape_string 之前使用 Web 服务进行名称检查,但这会带来安全漏洞吗?或者 SOAP Web 服务是否已经对干净的输入进行了自己的检查?
或者有没有更好的方法来传递变量,让 PHP 保留撇号但仍然保持安全并且 MySQL 可以接受它?
【问题讨论】:
-
它... 删除它? 真的?
标签: php mysql mysql-real-escape-string apostrophe