“WHERE...LIKE”查询未按预期工作 时间:2014-12-30 作者:Wilson 我有以下疑问:$results=$facilities=$mydb->get_results("SELECT facility_name from facility where facility_name like \'%".$facility_name."%\' LIMIT 0, 10"); 无论键入什么作为设施名称,它都不起作用。它刚刚回归前十名。 1 个回复 SO网友:Milo 你肯定应该使用prepare 在这种情况下,因为您的查询正在接受输入。如果有人以其他方式破坏您的数据库,那将是非常微不足道的。这里我们还使用new-in-4.0 esc_like method:$like = \'%\' . $mydb->esc_like( $facility_name ) . \'%\'; $results = $mydb->get_results( $mydb->prepare( "SELECT facility_name FROM facility WHERE facility_name LIKE %s LIMIT 0, 10", $like ) ); 结束 文章导航