sanfisa
-
Posts
2 -
Joined
-
Last visited
Posts posted by sanfisa
-
-
Hello,
I'm working in Yii framework. In my index action I created the dataprovider in the following way
$connection=Yii::app()->db;
$user_id = Yii::app()->user->id;
$sql = 'SELECT * FROM post
LEFT JOIN comment ON post.id = comment.post_id
AND comment.user_id =:user_id
LIMIT 0 , 30 ';
$command=$connection->createCommand($sql);
$command->bindParam(':user_id', $user_id,PDO::PARAM_STR);
$rawData = $command->execute();
$dataProvider=new CArrayDataProvider($rawData, array(
'id'=>'user',
'sort'=>array(
'defaultOrder' => 'post.created',
),
'pagination'=>array(
'pageSize'=>10,
),
));then I render the index view
$this->render('index',array(
'dataProvider'=>$dataProvider,
'category_id'=>$category_id,
));Index view is doing
<?php $this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
)); ?>which cause the error
Invalid argument supplied for foreach()
C:\wamp\www\yii\framework\web\CArrayDataProvider.php(140)
* @param array $directions the sorting directions (field name => whether it is descending sort)
*/136 foreach($directions as $name=>$descending)
137 {
138 $column=array();
139 $fields_array=preg_split('/\.+/',$name,-1,PREG_SPLIT_NO_EMPTY);
140 foreach($this->rawData as $index=>$data)
141 $column[$index]=$this->getSortingFieldValue($data, $fields_array);
142 $args[]=&$column;
143 $dummy[]=&$column;
144 unset($column);
145 $direction=$descending ? SORT_DESC : SORT_ASC;
146 $args[]=&$direction;
147 $dummy[]=&$direction;
148 unset($direction);
149 }When I use $rawData = $command->queryAll(); instead of $rawData = $command->execute();
I got the error
Call to a member function getAttributeLabel() on a non-object in C:\wamp\www\contest\protected\views\contest\_view.php on line 8
where the code is
<b><?php echo CHtml::encode($data->getAttributeLabel('id')); ?>:</b>
Can you help me?
Thank you in advance
Syntax Error Unrecognized Expression: #comment<?php Echo $Data['id'
in The Yii Book
Posted
Hello,
until now, I was using my js script within my view page for testing. Now, as suggested in the Yii Book, I'd like to use registeriing script.
I use the command at the end of my view
<?php
Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/js/comment.js', CClientScript::POS_END);
?>
then, I got the syntax error Syntax Error: Unrecognized expression.
Do you know where is my mistake ?
Thank you in advance for your help