2016-04-28 6 views
0
   $sql= "SELECT p.id, p.item_name, p.status, p.img_1, p.date_created 
        FROM user_posted_assets p 
        WHERE `p`.`status` = 'AVAILABLE' 
        ORDER BY `p`.`date_created` DESC"; 

      $sql_count="SELECT count(*), p.id, p.userid, p.img_1,p.date_created, p.date_lastmodified  FROM user_posted_assets p 
        WHERE `p`.`status` = 'AVAILABLE' 
        ORDER BY `p`.`date_created` DESC"; 

      // Get the count for 
      $count=Yii::app()->db->createCommand($sql_count)->queryScalar();    

      $dataProvider=new CSqlDataProvider($sql, array(
      'totalItemCount'=>$count 
      )); 


      $dataset = $dataProvider->getData(); 

      header('content-type: application/json'); 

      echo CJSON::encode($dataset); 

Wenn ich $ SQL-Abfrage in mysql führen Sie es 73 Zeilen zeigen, aber wenn ich print_r $ Dataset tun es nur 11 Elemente in der Konsole anzeigen ......yii csqldataprovider nicht vollständige Artikel aus der Datenbank bekommen

+0

Es tut mir leid, aber Ihr Code ist Formular Yii1 oder Yii2 und wenn ich von Yii ich sqlDataProvider ich aber nicht CSqlDataProvider weiß bitte zeigen Sie den Code dieser ControllerAction. – scaisEdge

+0

Was ist das Ergebnis Ihrer '$ -Zählung'? – Abbasi

+0

Ich benutze yii1.1 Dies ist der volle Code, den ich im Controller verwende. – mathi

Antwort

1

count($provider->getData()) oder print_r $dataset wird entsprechend Ihrer Seitennummerierung standardmäßig seine 10. angezeigt. Entweder Sie können Paginierung einstellen oder entfernen es wird gut funktionieren. Wenn die Seitennummerierung falsch ist, gibt dies den gleichen Wert zurück wie totalItemCount

Verwandte Themen