撇号在PHP中打破了我的mysql查询

时间:2009-12-25 15:15:03

标签: php mysql apostrophe

我的数据库有偶尔包含撇号的名称记录,例如Joe's Bar,我刚刚在PHP中编写了一个查询脚本,用于抓取该字段并将其粘贴到通常为$query = "SELECT address FROM restaurants WHERE name='$name'";的select语句中一些餐馆名称中的撇号使爱情列车脱轨。

如何防止这种情况发生?

Snide回答 - 使用您通过PHP将它们插入数据库时​​使用的相同技术。
反驳 - 我当时遇到了同样的问题并且被欺骗并直接使用PHPMyAdmin进入了麻烦的问题,但这不能再被忽略了。

感谢您在节假日期间花时间回答这个问题。

2 个答案:

答案 0 :(得分:17)

在该行之前必须$name = mysql_real_escape_string($name);

您可能还想阅读SQL Injections,因为您的输入显然未经过清理。

答案 1 :(得分:4)