destoon设置自定义搜索的方法
第一步:
在include/global.fun.php中加入两个函数
函数一:
functionloseSpace($pcon){ $pcon=preg_replace("//","",$pcon); $pcon=preg_replace("/ /","",$pcon); $pcon=preg_replace("//","",$pcon); $pcon=preg_replace("/\r\n/","",$pcon); $pcon=str_replace(chr(13),"",$pcon); $pcon=str_replace(chr(10),"",$pcon); $pcon=str_replace(chr(9),"",$pcon); return$pcon; }
函数二:
functionselect_search($name,$tb,$fid){ global$db; $title="<selectname=".$name."><optionvalue=>所有</option>"; $r=$db->get_one("SELECToption_valueFROM{$db->pre}fieldsWHEREname='$name'andtb='$tb'"); $option_value=loseSpace($r["option_value"]); $ps=split("\*",$option_value); #var_dump($matchs); foreach($psas$s){ //以*分割1|可用*=>1,可用 if(!$s){ continue; } list($num,$word)=split("\|",$s); $result[$num]=$word; } foreach($resultas$n=>$v) { if($n==$fid){ $title.="<optionvalue=".$n."selected>".$v."</option>"; } else{ $title.="<optionvalue=".$n.">".$v."</option>"; } } $title.="</select>"; return$title; }
第一个函数的意思是过滤空格回车
第二个函数是根据name(自定义字段)tb(所属模型)$fid(当前所选ID)生成下拉列表。
第二步:
在module/sell/search.inc.php中的$day=isset($day)?intval($day):0;下插入
$chengse=isset($chengse)?intval($chengse):0;
在if($vip)$condition.="ANDvip>0";下加入
if($chengse)$condition.="ANDchengse=$chengse";
然后在模板文件中使用:
{select_search(chengse,sell,$chengse)}