Yii框架结合sphinxAjax如何实现搜索分页功能-创新互联
                                            这篇文章主要介绍Yii框架结合sphinx Ajax如何实现搜索分页功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
成都创新互联自2013年起,先为陆丰等服务建站,陆丰等地企业,进行企业商务咨询服务。为陆丰企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。具体如下:
效果图:

控制器:
request->get('sou');
    $p1=Yii::$app->request->get('p1');
    $p2=Yii::$app->request->get('p2');
    //echo $sou.$p1.$p2;die;
    //sphinx搜索
    $cl = new SphinxClient();
    $cl -> SetServer('127.0.0.1',9312);
    $cl -> SetConnectTimeout(3);
    $cl -> SetArrayResult(true);
    if($sou)
    {
      //只搜索条件
      $cl -> SetMatchMode(SPH_MATCH_ANY);
    }
    else
    {
      //全局扫描
     $cl -> SetMatchMode(SPH_MATCH_FULLSCAN);
    }
    //设置价格(注意:创建索引时,价格属性定义为int)
    if($p1&&$p2)
    {
    $cl->SetFilterRange('price',$p1,$p2);
    }
    //搜索查询关键字
    $res = $cl->Query($sou,"mysql_goods");
    //ajax分页
    $model=new Goods();
    foreach ($res['matches'] as $key => $val)
    {
     $ids[] = $val['id'];
    }
    //查询条件数据
    $query = $model->find()->where(['id'=>$ids]);
    $countQuery = clone $query;
    $pages = new Pagination(['totalCount' => $countQuery->count(),'defaultPageSize'=>3]);
    //分页
    $models = $query->offset($pages->offset)
    ->limit($pages->limit)
    ->all();
    //关键字变红
    foreach($models as $k=>$v)
    {
      $models[$k]['goods_name']=str_replace("$sou","$sou",$v['goods_name']);//将关键字替换成红色字体
    }
    //显示列表,分配数据
    return $this->render('index', [
       'res' => $models,
       'pages' => $pages,
       'sou'=>$sou,
       'p1'=>$p1,
       'p2'=>$p2
    ]);
   }
}
?>视图层:
'index.php?r=sou/index', 'method' => 'get' ]) ?>beginBlock('test2') ?> $(document).on('click', '.pagination a', function(e) { //阻止page显示,看地址 e.preventDefault(); var href = $(this).attr('href'); $.post(href,function(msg){ $('#list').html(msg); }) }); endBlock(); $this->registerJs($this->blocks['test2'] , yii\web\View::POS_END) ?> 商品名称: "> 价格区间: ">---">= LinkPager::widget(['pagination' => $pages]) ?>
$v){?> ID 商品名称 商品价格 
以上是“Yii框架结合sphinx Ajax如何实现搜索分页功能”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
网页标题:Yii框架结合sphinxAjax如何实现搜索分页功能-创新互联
网站路径:http://www.jxjierui.cn/article/cdijce.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 