Php yii中的注册和搜索问题

Php yii中的注册和搜索问题,php,search,yii,pagination,Php,Search,Yii,Pagination,这是Cpagination操作,当我进行有3个结果的搜索时,例如,它给我3个页面,每个页面都有相同的3个结果,那么这里有什么问题: $criteria = new CDbCriteria(); $models = Files::model(); if (isset($_GET['file'])) { $q = $_GET['file']; $criteria->compare(

这是Cpagination操作,当我进行有3个结果的搜索时,例如,它给我3个页面,每个页面都有相同的3个结果,那么这里有什么问题:

 $criteria = new CDbCriteria();
            $models = Files::model();
            if (isset($_GET['file'])) {
                $q = $_GET['file'];
                $criteria->compare('fileName', $q, true, 'OR');
                $criteria->compare('tags', $q, true, 'OR');
                $count=Files::model()->count($criteria);
                $pages=new CPagination($count);

                // results per page
                $pages->pageSize=1;
               // $pages->applyLimit($criteria);

            }

            $dataProvider = new CActiveDataProvider("Files", array('criteria' => $criteria));
            $this->render('result', array(
                'dataProvider'=>$dataProvider,
                'pages'=>$pages,
                    ));
这是一种观点:

<?php


$this->widget('zii.widgets.CListView', array(
    'dataProvider' => $dataProvider,
    'itemView' => '_view',
));
$this->widget('CLinkPager', array(
    'pages' => $pages,
)) ?>

您正在代码中使用网格化的东西。此外,您的
$pages->pageSize
仅在
设置($\u GET['file'])
时运行
if
语句只能用于添加条件参数

您必须决定是否只使用
Files::model()
cactivedaptaprovider(“文件”)
。如果要使用
CActiveDataProvider

$criteria = new CDbCriteria();

if ( isset($_GET['file']) ) {
    $criteria->compare('fileName', $_GET['file'], true, 'OR');
    $criteria->compare('tags', $_GET['file'], true, 'OR');
}

$dataProvider = new CActiveDataProvider("Files", array(
    'criteria' => $criteria,
    'countCriteria' => $criteria,
    'pagination'=>array(
        // results per page
        'pageSize'=>1,
    ),
));

$this->render('result', array(
    'dataProvider' => $dataProvider,
    'pages' => $dataProvider->pagination,
));

另外,我看不到您的
视图
。可能您也有一些错误的分页代码。

countCriteria未定义,我想使用Files::model(),我将编辑问题并向您显示视图对象CActiveDataProvider的代码>计数标准。您使用的版本是什么?尝试删除
'countCriteria'=>$criteria,
。我删除了它并从视图中删除了分页小部件,现在工作正常,谢谢:)