[请益] 想请问一下关于pdo搜寻多组字串的问题

楼主: rjackie (向前走,才知道转角)   2017-01-21 03:07:25
各位先进 小弟有一事想要请教各位大大
因目前专案有一功能是需要LIKE多组字串,以下程式
$p_search = explode(" ",$p_search_name);
$product_info_sql = $db->prepare("SELECT no FROM product_info
where name LIKE '%".$p_search_name."%' ");
foreach($p_search as $k){
$product_info_sql = $db->prepare( " OR name LIKE '%$k%' ");
}
$product_info_sql = $db->prepare(" AND status = ? order by sequence
DESC limit " . $startRow_records . ",$pageRow_records");
$product_info_sql->execute(array('1'));
主要是判断有几组字串(关键字),产生多组OR name LIKE
但是PDO好像不能这样用,还想请大大们解惑
万分感谢
作者: cf1064 (蚵仔)   2017-01-21 11:11:00
应该是先把你的sqlstring组好再一次丢给prepare吧?
作者: MOONRAKER (㊣牛鹤鳗毛人)   2017-01-21 15:13:00
这样最后执行的SQL不就只剩AND...那些php的 = 没有连接字串功能 用到pdo也不会自己跑出来
作者: zop (ㄞ肝ㄞ肝~一元二十罐~)   2017-01-21 15:51:00
每个查询分开执行
楼主: rjackie (向前走,才知道转角)   2017-01-21 16:43:00
因为查询的条件有循环是否是要把SQL先放到阵列中在prepar
作者: MOONRAKER (㊣牛鹤鳗毛人)   2017-01-22 11:19:00
"查询的条件有循环"是什么意思你有一大堆LIKE ... OR LIKE ... 就把各个like凑成阵列最后再implode(' OR ', $likes)不就结了

Links booklink

Contact Us: admin [ a t ] ucptt.com