青岛网站建设
当前位置::首页 > 动态 > 速联观点 >
如何解决织梦自定义搜索分页错误的问题
发布时间:[2016-10-09]    发布人:青岛网站建设    共阅[]
织梦的自定义搜索页面,第一页显示正常内容,但第二页内容就不对了。主要问题是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.7utf-8 版本, 此方法测试几次都能成功, 别的版本大家有兴趣可以去试一下。

CONTACT

服务热线:4008-0532-18 / 18766290210
技术支持:4008-0532-18 / 18766290210
客服QQ:1105881163 / 528368469
E-mail:info@qdexun.cn
公司地址:山东省青岛市市南区香港中路52号16层