2012-09-17 64 views
0

我想将一个变量连接到我的LIKE子句中。我相信我做错了。我能做什么?使用SQL LIKE子句

$query2= "SELECT user_id FROM interests WHERE interest LIKE  
'%'".$interest."'%'"; 

回答

2

引号的定位是错误的。检查%符号周围的单引号。

$query2= "SELECT user_id FROM interests WHERE interest LIKE '%".$interest."%'";

你以前有什么是 '%' $利息 '%' 而不是 '%$兴趣%',这是你想要的东西。

2

这将串联变量转换成字符串以正确的方式:

$query2 = "SELECT user_id FROM interests WHERE interest LIKE '%" . $interest. "%'"; 

LIKE后有额外的单引号。

但是,您应该使用mysqli_或PDO准备好的语句。

1

删除%后的单引号。

0

删除您的额外引号,不要忘记逃避您的外部输入(或使用准备好的语句)。

$query2= "SELECT user_id FROM interests WHERE interest LIKE '%". 
     mysqli_real_escape_string($interest)."%'";