destoon設置自定義搜索的方法

  第一步:

在include/global.fun.php中加入兩個函數

函數一:

  

function loseSpace($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;
}
 
function select_search($name,$tb,$fid){
    global $DT;
    $titles='<select name=".$name."><option value="">所有</option>';
    $r = DB::query("SELECT option_value FROM {$db->pre}fields WHERe name='$name' and tb='$tb'");
    $option_value=loseSpace($r['option_value']);
    $ps = split('\*', $option_value);
    //var_dump($matchs);
    foreach ($ps as $s){
    //以*分割1|可用*=> 1, 可用
     if(!$s){
    continue;
     }
     list($num,$word) = split('\|', $s);
     $result[$num] = $word;
    }     
    foreach($result as $n => $v){
    if ($n==$fid){
     $titles .='<option value=".$n." selected="">".$v."</option>';
    }
    else{
     $titles .='<option value=".$n.">".$v."</option>';
    }
    }
    $titles .='</select>';
    return $titles;
}

第一個函數的意思是過濾空格回車

第二個函數是根據 name(自定義字段) tb(所屬模型) $fid(當前所選ID)生成下拉列表。

第二步:

在module/sell/search.inc.php中的$day = isset($day) ? intval($day) : 0;下插入

$xin = isset($xin)?intval($xin):0;

在if($vip) $condition .= " AND vip>0";下加入

if($xin) $condition .= " AND xin=$xin";

然後在模板文件中使用:

{select_search(xin,sell,$xin)}

然後就這效果了:http://zhimo.yuanzhumuban.cc/hotkey/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章