www.gusucode.com > 搜一次CMS电影程序 PHP 1.5源码程序 > search.php
<?php /* '************************************************************************************************** ' 软件名称: 搜一次 Content Management System ' 版本编号: Version 1.X ' 官方网站: http://www.syccms.com ' 官方论坛:http://bbs.syccms.com ' 版权所有: 搜一次开发团队 无痕(QQ:512591) ' 法律顾问: 杭州市元茂律师事务所 严飞律师 ' 郑重声明: ' 1、任何个人或组织不得在未经授权的情况下删除、修改、拷贝本软件及其他副本上一切关于版权的信息; ' 2、搜一次网络事业部保留此软件的法律追究权利 '************************************************************************************************** */ include_once("include/config.php"); include_once("include/label.php"); @header("Cache-control: private"); $keyword=SafeRequest("keyword","post"); if($keyword==""){ $keyword=ReplaceStr(SafeRequest("keyword","get")," ",""); if(is_utf8($keyword)) $keyword=convert_encoding($keyword, 'GBK' ,'UTF-8'); } if($keyword==""){ die("<script>alert('请输入查询的关键字');history.back();</script>"); } $Mark_Text=@file_get_contents(_SYC_ROOT_.S_Templateurl."search.html"); $Mark_Text=topandbottom($Mark_Text); $Mark_Text=ReplaceStr($Mark_Text,"{syccms:search}",$keyword); $data_content=''; //预先除了分页 $pagenum=getpagenum($Mark_Text); preg_match_all('/{syccms:video(.*?pagesize=([\S]+).*?)}([\s\S]+?){\/syccms:video}/',$Mark_Text,$page_arr);//判断是否有分页标识 if(!empty($page_arr) && !empty($page_arr[2])){ $zimu_arr=array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'); $zimu_arr1=array(-20319,-20283,-19775,-19218,-18710,-18526,-18239,-17922,-1,-17417,-16474,-16212,-15640,-15165,-14922,-14914,-14630,-14149,-14090,-13318,-1,-1,-12838,-12556,-11847,-11055); $zimu_arr2=array(-20284,-19776,-19219,-18711 ,-18527,-18240,-17923,-17418,-1,-16475,-16213,-15641,-15166,-14923,-14915,-14631,-14150,-14091,-13319,-12839,-1,-1,-12557,-11848,-11056,-2050); if(in_array(strtoupper($keyword),$zimu_arr)){ $posarr=array_keys($zimu_arr,strtoupper($keyword)); $pos=$posarr[0]; $sqlstr="SELECT * FROM s_video where ((ord( substring( S_Name, 1, 1 ) ) -65536>=".($zimu_arr1[$pos])." and ord( substring( S_Name, 1, 1 ) ) -65536<=".($zimu_arr2[$pos]).")) or UPPER(substring( S_Name, 1, 1 ))='".$zimu_arr[$pos]."'"; }else{ $sqlstr="select * from s_video where S_IsHide=0 and S_ClassID<>0 and S_Name like '%".$keyword."%' or S_Author like '%".$keyword."%' or S_Year like '%".$keyword."%' or S_Direct like '%".$keyword."%' or S_Area like '%".$keyword."%' order by S_AddTime desc"; } //$sqlstr="select * from s_video where S_IsHide=0 and S_ClassID<>0 and S_Name like '%".$keyword."%' or S_Author like '%".$keyword."%' or S_Year like '%".$keyword."%' or S_Direct like '%".$keyword."%' or S_Area like '%".$keyword."%' order by S_AddTime desc"; $Arr=searchpage($sqlstr,$page_arr[2][0],$keyword);//sql,每页显示条数 $result=$db->query($Arr[2]); $recount=$db->num_rows($result); if($recount==0){ $mmc=urlencode(convert_encoding("管理员您好,我想看《".$keyword."》请您添加一下,谢谢!",'UTF-8','GBK')); $data_content="<div align=center><a href=gbook.php?content=".$mmc."><strong><font color=#FF0000>对不起,没有找到《".$keyword."》相关视频,请给管理员留言!</font></strong></a><br/><br/><a href='http://www.sogou.com/sogou?query=".$keyword."&pid=sogou-wsse-952ba29c21b26b0c' target='_blank'><strong>用搜狗搜索<font color=red>《".$keyword."》</font>相关资源!</strong></a><br/><br/><a href='http://www.gougou.com/search?search=".$keyword."&id=30887&pattern=31000' target='_blank'><strong>用迅雷搜索<font color=red>《".$keyword."》</font>相关资源!</strong></a></div>"; }else{ if($result){ $sorti=1; while ($row2 = $db ->fetch_array($result)){ $datatmp=datavideo($page_arr[0][0],$page_arr[3][0],$row2,$sorti); $sorti=$sorti+1; $data_content.=$datatmp; } } }// end if recount $Mark_Text=Page_Mark($Mark_Text,$Arr); $Mark_Text=ReplaceStr($Mark_Text,$page_arr[0][0],$data_content); unset($Arr); } unset($page_arr); $Mark_Text= Common_Mark($Mark_Text,0); $p=SafeRequest("pages","get"); $cache_id ='s_'.$keyword.$p; if(!($cache_opt->start($cache_id))){ echo($Mark_Text); $cache_opt->end(); } function searchpage($mysql,$pagesize,$keyword){ global $db; if(!is_utf8($keyword)) $keyword=urlencode(convert_encoding($keyword ,'UTF-8', 'GBK')); $url="keyword=".$keyword."&"; $pages=SafeRequest("pages","get"); $pagesok=$pagesize;//每页显示记录数 if (!isset($pages)||$pages==""||!is_numeric($pages)||$pages<=0){$pages=1;} $sqlstr=$mysql; $res=$db -> query($sqlstr); $nums= $db -> num_rows($res); if($nums==0){$nums=1;} $pagejs=ceil($nums/$pagesok);//总页数 if($pages>$pagejs){ $pages=$pagejs;} $sql=$sqlstr." LIMIT ".$pagesok*($pages-1).",".$pagesok; $result = $db -> query($sql); $str=""; $first="?".$url."pages=1"; $pageup="?".$url."pages=".($pages-1).""; $pagenext="?".$url."pages=".($pages+1).""; $last="?".$url."pages=".$pagejs.""; $pagelist="<script> function gotopage(url,page){ window.location=url+page; } </script>"; $pagelist.="<select onchange=\"gotopage('?".$url."pages=',this.value)\">\r\n<option value='0'>跳转</option>\r\n"; for($k=1;$k<=$pagejs;$k++){ $pagelist.="<option value='".$k."'>第".$k."页</option>\r\n"; } $pagelist.="</select>"; if($pagejs<=10){ for($i=1;$i<=$pagejs;$i++){ $str.="<a href='?".$url."pages=".$i."'>".$i."</a> "; } } else{ if($pages>=12){ for($i=$pages-5;$i<=$pages+6;$i++){ if($i<=$pagejs){ $str.="<a href='?".$url."pages=".$i."'>".$i."</a> "; } } if($i<=$pagejs){ $str.="...."; $str.="<a href='?".$url."pages=".$pagejs." '>".$pagejs."</a> "; } } else{ for($i=1;$i<=12;$i++){ $str.="<a href='?".$url."pages=".$i." '>".$i."</a> "; } if($i<=$pagejs){ $str.="...."; $str.="<a href='?".$url."pages=".$pagejs." '>".$pagejs."</a> "; } } } while ($row = $db -> fetch_array($result) ){ } $arr=array($str,$result,$sql,$nums,$pagelist,$pages,$pagejs,$first,$pageup,$pagenext,$last,$pagesok); return $arr; } function is_utf8($string) { // From http://w3.org/International/questions/qa-forms-utf-8.html return preg_match('%^(?: [\x09\x0A\x0D\x20-\x7E] # ASCII | [\xC2-\xDF][\x80-\xBF] # non-overlong 2-byte | \xE0[\xA0-\xBF][\x80-\xBF] # excluding overlongs | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} # straight 3-byte | \xED[\x80-\x9F][\x80-\xBF] # excluding surrogates | \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3 | [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15 | \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16 )*$%xs', $string); } // function is_utf8 ?>