📄 search.php
字号:
<?php
/***********************************************
search.php
Version : 1.2
Author : Tracemouse (tracemouse@msn.com)
Copyright: www.vitci.com
Writed : 2003/08/09
Modified : 2003/11/19
************************************************/
require "./include/base.php";
require "./include/catalog.php";
if(!$searchsubmit)
{
$sort_select=getsortselect(0);
$nav .= SEPARATER.$language['head_search'];
include template('search');
}
else
{
//if(empty($searchtxt)) showmessage("searchtxt_null");
if($searchtxt) // 处理表单提交过来的数据
{
$db->query("DELETE FROM $table_searchindex WHERE dateline<$timestamp-3600");
$searchtxt=trim($searchtxt);
if(preg_match("(AND|\+|&|\s)", $searchtxt) && !preg_match("(OR|\|)", $searchtxt))
{
$andor = ' AND ';
//$sqltxtsrch = '1';
$searchtxt = preg_replace("/( AND |&| )/is", "+", $searchtxt);
}
else
{
$andor = ' OR ';
//$sqltxtsrch = '0';
$searchtxt = preg_replace("/( OR |\|)/is", "+", $searchtxt);
}
$searchtxt = str_replace('*', '%', $searchtxt);
$i=1;
$sqltxtsrch="(";
foreach(explode('+', $searchtxt) as $text)
{
$text = trim($text);
if($text)
{
$sqltxtsrch= ($i==1)?$sqltxtsrch:$sqltxtsrch.$andor;
$sqltxtsrch .= !$nameonly ? " (productname LIKE '%$text%' OR notes LIKE '%$text%')" : "productname LIKE '%$text%'";
}
$i=$i+1;
}
$sqltxtsrch.=")";
if((!$allsort)&&($sortid > 0))
$sqltxtsrch.=" AND sortid = $sortid ";
if(isset($fprice)&&isset($tprice))
$sqltxtsrch.=" AND ourprice >= $fprice AND ourprice <= $tprice ";
if (empty($orderindex))
$sqltxtsrch .= "ORDER BY posttime DESC";
else
{
if($orderway == 'up')
$sqltxtsrch .= "ORDER BY $orderindex";
else
$sqltxtsrch .= "ORDER BY $orderindex DESC";
}
$sqlstr="SELECT COUNT(*) FROM $table_products WHERE $sqltxtsrch";
if(!($query = $db->query($sqlstr)))
showmessage($language['db_err'].$sqlstr);
$productnum=$db->result($query,0);
$sqlstr="INSERT INTO $table_searchindex(srhcondition,result,dateline) VALUES(\"".$sqltxtsrch."\",$productnum,$timestamp)";
if(!($query = $db->query($sqlstr)))
showmessage($language['db_err'].$sqlstr);
$searchindex=$db->insert_id();
}
$sqlstr="SELECT * FROM $table_searchindex WHERE id = $searchindex";
$query=$db->query($sqlstr);
while($dbq_rec=$db->fetch_array($query))
{
$sqltxtsrch=$dbq_rec['srhcondition'];
$productnum=$dbq_rec['result'];
}
unset($query);unset($dbq_rec);
$count=$productnum;
if ($count <= $perpage)
$maxpage=1;
else
{
$maxpage=($count - ($count % $perpage))/$perpage;
$maxpage=$maxpage+1;
}
if(!empty($page))
{
$start_limit = ($page-1) * $perpage;
$startnum = ($page-1) * $perpage + 1;
$endnum = $page * $perpage;
}
else
{
$startnum = 1;
$endnum = $perpage;
$start_limit = 0;
$page = 1;
}
$multipage = multi($count, $perpage, $page, "search.php?action=search&searchsubmit=yes&searchindex=$searchindex&hideimg=$hideimg");
$productlist = array();
$query = $db->query("SELECT * FROM $table_products WHERE $sqltxtsrch LIMIT $start_limit,$perpage");
while($dbq_rec = $db->fetch_array($query))
{
$dbq_rec['img']=empty($dbq_rec['smallimg'])?IMGDIR."/noimg.gif":$dbq_rec['smallimg'];
$dbq_rec['subject'] = substr($dbq_rec['notes'],0,101)."...";
//$dbq_rec['subject'] = nl2br($dbq_rec['subject']);
$productlist[] = $dbq_rec;
}
$nav .= SEPARATER.$language['searchresult'];
$action="search";
include template('productlist');
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -