资源描述
织梦自定义搜索分页错误的解决方法
-----(YYCYS.COM)-----------------------------------------------------------
织梦的自定义搜索页面,第一页显示正常内容,但第二页内容就不对了。主要问题是session传递不过来,而session 的变量是通过 GET方式获得的。不说太多,怕大家不明白。
原文:
在advancedsearch.php 页面
找到
$dlist->SetParameter("hash", $sqlhash);
改成
$dlist->SetParameter("sqlhash", $sqlhash);
就成。
另外,搜索页面有时会出现一个错误,提示 TypeGetSunID 函数不存在。
处理方法
在 @session_start() 下
加上
function GetSonIds1($id,$channel=0,$addthis=true)
{
global $cfg_Cs;
$GLOBALS['idArray'] = array();
if( !is_array($cfg_Cs) )
{
require_once(DEDEDATA."/cache/inc_catalog_base.inc");
}
GetSonIdsLogic1($id,$cfg_Cs,$channel,$addthis);
$rquery = join(',',$GLOBALS['idArray']);
$rquery = preg_replace("/,$/", '', $rquery);
return $rquery;
}
//递归逻辑
function GetSonIdsLogic1($id,$sArr,$channel=0,$addthis=false)
{
if($id!=0 && $addthis)
{
$GLOBALS['idArray'][$id] = $id;
}
if(is_array($sArr))
{
foreach($sArr as $k=>$v)
{
if( $v[0]==$id && ($channel==0 || $v[1]==$channel ))
{
GetSonIdsLogic1($k,$sArr,$channel,true);
}
}
}
}
另外找到 $tids = TypeGetSunID($typeid,$dsql,'',$mid,true);
改成 $tids = GetSonIds1($typeid,$mid,true);
原理不说,大家自己去测试一下。
本人使用5.6utf-8 版本, 此方法测试几次都能成功, 别的版本大家有兴趣可以去试一下。另外,记得备份文件再修改,本人只提供方法。
-----------------------------------------( )
(本文由YYCYS知识网编辑整理 )
展开阅读全文