[英]Yii: Retrieving data using Cdbcriteria
我是yiibie。 我想做的是從數據庫中檢索數據,為此,我正在使用cDbCriteria
。 我想從名為Event
數據庫表中獲取最后4張圖像。 然后要分別顯示這4張圖像。 我正在使用此方法,但未獲得任何結果,請為此提供幫助。
<?php
$Criteria = new CDbCriteria();
$Criteria->limit = 4;
$Criteria->order = "image DESC";
$Criteria->select = "id, image";
$Events = Event::model()->findAll($Criteria);
foreach ( (array)$Events as $Event)
{
$Event[1]=$image1;
$Event[2]=$image2;
$Event[3]=$image3;
$Event[4]=$image4;
}
?>
<div class="row">
<h3>Events</h3>
<div class="col-md-3">
<div class="thumbnail">
<img src="<?php echo $image1 ?>">
<div class="caption">
<a href="join.php"> <button class="btn btn-primary center-block">Join</button></a>
</div>
</div>
</div>
findAll()方法檢索ActiveRecords的數組,因此您需要一個foreach循環。 嘗試:
foreach ( (array)$Events as $Event)
{
echo "
<div class='col-md-3'>
<div class='thumbnail'>
<img src='$Event->image' >
<div class='caption'>
<a href='join.php'><button class='btn btn-primary center-block'>Join</button></a>
</div>
</div>
</div>
";
}
$Criteria = new CDbCriteria();
$Criteria->limit = 4;
$Criteria->order = "id DESC";
$Criteria->select = "id, image";
$Events= Event::model()->findAll($Criteria);
這將給出最后4條記錄
第一種方式
if(isset($Events[0]))
echo $Events[0]->image;
if(isset($Events[1]))
echo $Events[1]->image;
if(isset($Events[2]))
echo $Events[2]->image;
if(isset($Events[3]))
echo $Events[3]->image;
我在這里檢查isset()
因為可能有b 3項。 這是靜態的
第二路
foreach($Events as $event)
{
echo $event->image;
}
this is dynamic binding.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.