使用php构建sql查询条件部分的一种方法
我不说一般常用的方法,我就只是简单介绍一下我使用的一种方法。
搜索表单:必须提交过来一个或者多个关键词,用空格分开,变量名称$keyword,提交过来一个and或者or,变量名称是$andor
一下是构建sql 条件部分的代码
<?
###检查关键词
$keyword="key1 key2 key3";
$andor= " or ";
$keywords = preg_split("/\s+/", $keyword);
$num = sizeof($keywords);
if ($num == 0 || empty($keyword)) die("pls input keyword");
###构建sql片断
$con_str="(article_title like '%@@@%' or article_intro like '%@@@%' or article_content like '%@@@%')";//这是最基本的sql片断
foreach($keywords as $key){
$con_s[]=str_replace("@@@",$key,$con_str);
}
$condition=implode(" $andor ",$con_s);//构建条件完成
echo $condition;
?>
这种方法思路清晰,不容易出现少了或者多了什么符号的问题,有兴趣可以试试,尤其是在构建比较复杂的搜索查询条件时候,
[ Last edited by szpeter on 2004-3-23 at 11:39 PM ]