5492
img.tiff
Hello alll,
I have a project where i have display gridview with edit delete option but when gridview is display there are also null value will be display in gridview means extra row generates in gridview so i dont know is there any problem in my code or how to handle it
View
<?php $this->widget(‘zii.widgets.grid.CGridView’, array(
'id'=>'category-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
array (
'name'=>'name',
//'header'=> 'name' ,
'type'=>'raw',
'htmlOptions' => array('style' => 'text-align:center;'),
'filter' => false
),
array (
'name'=>'Total Images',
'header'=> 'Total Images' ,
'type'=>'raw',
'value'=> array($model,'totalimages'),
'htmlOptions' => array('style' => 'text-align:center;'),
'filter' => false
),
array(
'class'=>'CButtonColumn',
),
),
)); ?>
model
public function search()
{
// Warning: Please modify the following code to remove attributes that
// should not be searched.
//$criteria1=new CDbCriteria;
//$criteria1->select='c.id,c.user_id,c.name';
//$criteria1->alias = 'c';
//$criteria1->join='LEFT JOIN user u ON u.id = c.user_id';
$criteria1->condition = 'u.email = Yii::app()->user->id';
$criteria=new CDbCriteria;
$criteria->alias = 'c';
$criteria->compare('id',$this->id);
$criteria->compare('name',$this->name,true);
$criteria->compare('is_active',$this->is_active);
//$criteria->join='LEFT JOIN user u ON u.id = c.user_id';
$criteria->addCondition('c.parent_id IS NULL');
//$criteria->condition = 'u.email = \'' .Yii::app()->user->id . '\'';
$criteria->condition = 'c.user_id = ' .Yii::app()->user->id;
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
'sort'=>array(
'attributes'=>array(
'c.name'=>array(
'asc'=>'c.name',
'desc'=>'c.name DESC',
),
'*',
),
),
));
}
public function categoryname($data, $row)
{
$sql="select id,name from category where parent_id IS NULL AND user_id = ".Yii::app()->user->id;
//print $row;
$command=Yii::app()->db->createCommand($sql);
$fetchData = $command->queryAll();
if(count($fetchData) > 0)
{
$cate_all = array();
foreach($fetchData as $key => $value)
{
$cate_all[$value['name']] = $value['name'];
}
$model=Category::model()->findAllByAttributes(array('id' => $data->id));
if(count($model) > 0)
{
for($l=0;$l<count($model);$l++)
{
if(in_array($model[$l]['name'], $cate_all))
{
return CHtml::link($model[$l]['name'], Yii::app()->createUrl("/category/adminsubcategory&id=".$data->id.""),array("class"=>"classopen1"));
}
}
}
}
//return count($model);
}
so when i debug the value of the $row get 2 but have record one so from where it passed dont know , so can u please help me here how to handle the extra row in gridview ,
i m new to yii framwork …