第一步:
在include/global.fun.php 或者 api/extend.func.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$DT; $titles='<selectname=".$name."><optionvalue="">所有</option>'; $r=DB::query("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){ $titles.='<optionvalue=".$n."selected="">".$v."</option>'; }else{ $titles.='<optionvalue=".$n.">".$v."</option>'; } } $titles.='</select>'; return$titles; }
第一个函数的意思是过滤空格回车
第二个函数是根据 name(自定义字段) tb(所属模型) $fid(当前所选ID)生成下拉列表。
第二步:
2-1、在module/sell/search.inc.php中的$day = isset($day) ? intval($day) : 0;下插入
$xin = isset($xin) ? intval($xin) : 0; //其中 xin 为字段
2-2、在if($vip) $condition .= " AND vip>0";下加入
if($xin) $condition .= " AND xin=$xin";//其中 xin 为字段
前端使用:在模板文件中用下面的代码调取 {select_search(xin,sell,$xin)} ,其中 xin 为字段,sell为模块目录