您的语法错误;无需在双引号字符串内放置句点。相反,它应该更像
$query = mysql_query("SELECt * FROM table WHERe the_number LIKE '$prefix%'");您可以通过打印出字符串以确认与第一种情况相同来确认这一点。
当然,像这样简单地将变量注入查询字符串中 并不是一个好主意
,因为存在SQL注入的危险。至少您应该使用手动转义变量的内容
mysql_real_escape_string,这将使其看起来像这样:
$sql = sprintf("SELECt * FROM table WHERe the_number LIKE '%s%%'", mysql_real_escape_string($prefix));$query = mysql_query($sql);请注意,
sprintf百分号的第一个参数内部需要加倍以最终在结果中出现一次。



