我的数据库有偶尔包含撇号的名称记录,例如Joe's Bar
,我刚刚在PHP中编写了一个查询脚本,用于抓取该字段并将其粘贴到通常为$query = "SELECT address FROM restaurants WHERE name='$name'";
的select语句中一些餐馆名称中的撇号使爱情列车脱轨。
如何防止这种情况发生?
Snide回答 - 使用您通过PHP将它们插入数据库时使用的相同技术。
反驳 - 我当时遇到了同样的问题并且被欺骗并直接使用PHPMyAdmin进入了麻烦的问题,但这不能再被忽略了。
感谢您在节假日期间花时间回答这个问题。
答案 0 :(得分:17)
在该行之前必须$name = mysql_real_escape_string($name);
。
您可能还想阅读SQL Injections,因为您的输入显然未经过清理。
答案 1 :(得分:4)