作者:手机用户2502907815 | 来源:互联网 | 2017-05-14 02:21
这条SQL查询语句什么意思啊今天在看代码!看到这里晕了!!请大虾们看看!$sql"SELECT lid, title, htmlfile, add_time FROM zixun_list WHERE tid'$t
这条SQL查询语句什么意思啊
今天在看代码!看到这里晕了!!请大虾们看看!
$sql= "SELECT lid, title, htmlfile, add_time FROM zixun_list WHERE tid= &#39;$tid &#39; AND lid <> &#39;$lid &#39; AND (keyword LIKE &#39;% ".preg_replace( "/(,|,)/ ", "% &#39; OR keyword LIKE &#39;% ", stripslashes($keyword)). "% &#39;) ORDER BY lid DESC LIMIT 2 ";
特别是这个:(keyword LIKE &#39;% ".preg_replace( "/(,|,)/ ", "% &#39; OR keyword LIKE &#39;% ", stripslashes($keyword)). "% &#39;)
------解决方案--------------------比如$keyword = "a,b ";
preg_replace( "/(,|,)/ ", "% &#39; OR keyword LIKE &#39;% ", stripslashes($keyword));
就是把$keyword字符串中的逗号替换为字符串 % &#39; OR keyword LIKE &#39;%
那么
"(keyword LIKE &#39;% ".preg_replace( "/(,|,)/ ", "% &#39; OR keyword LIKE &#39;% ", stripslashes($keyword)). "% &#39;) "
就变成
"(keyword LIKE &#39;%a% &#39; OR keyword LIKE &#39;%b% &#39;) "啦