阵列在MySQL WHERE样? [英] Array in Mysql WHERE LIKE?
本文介绍了阵列在MySQL WHERE样?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要数组列表选择。 $ ARRAY_NAME
包含:
阵列([0] => gum.cn [1] =方式> lol.com [2] => ns1.blar.com [3] => test.com [4] => web.cn.)
的print_r($ ARRAY_NAME);
$字符串=破灭('',$ ARRAY_NAME);
$罐=SELECT网址FROM`PHP`.`db`其中URL LIKE'%{$}字符串%';
$ RESULT1 =的mysql_query($罐);
而($ JWP = mysql_fetch_array($ RESULT1))
{
回声$ JWP ['URL'];
回声< BR>中;
}
块引用>为什么不把上面的工作?我搜索其它的例子,这个问题是问不使用
LIKE
子句,以便无解那里。请帮帮忙,先谢谢了。解决方案它不起作用,因为您的查询将扩展到:
选择URL FROM`PHP`.`db`其中URL LIKE'%gum.cn,lol.com,ns1.blar.com ...%
您必须修改您的查询一点:
$ query_parts =阵列();
的foreach($ ARRAY_NAME为$ VAL){
$ query_parts [] =%mysql_real_escape_string($ val)的%。'
}$字符串=破灭('或URL LIKE',$ query_parts);$罐=SELECT网址FROM`PHP`.`db`其中URL如{$字符串};I need to SELECT with array list.
$array_name
contains:Array ( [0] => gum.cn [1] => lol.com. [2] => ns1.blar.com [3] => test.com [4] => web.cn. )
print_r($array_name);
$string = implode(',',$array_name); $tank = "SELECT url FROM `PHP`.`db` WHERE url LIKE '%{$string}%'"; $result1 = mysql_query($tank); while ($jwp = mysql_fetch_array($result1)) { echo $jwp['url']; echo "<br>"; }
Why don't the above work? I search other example and the question is asking without using
LIKE
clause so no solution there. Please help, thanks in advance.解决方案It doesn't work because your query will expand to:
SELECT url FROM `PHP`.`db` WHERE url LIKE '%gum.cn,lol.com.,ns1.blar.com...%'
You have to modify your query a little:
$query_parts = array(); foreach ($array_name as $val) { $query_parts[] = "'%".mysql_real_escape_string($val)."%'"; } $string = implode(' OR url LIKE ', $query_parts); $tank = "SELECT url FROM `PHP`.`db` WHERE url LIKE {$string}";
这篇关于阵列在MySQL WHERE样?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文