2017-12-23 19 views
-1

mysqlから返された結果の数を数える正しい方法が不思議です。MYSQL DBの結果の件数をカウント

これは私のテーブルからデータを取得するためのコードです。

$bids = $this->db->query("SELECT bidID,listingID, listing_title, bid_date, username, vintage, starting_, bin, 
amount, sold, sold_date, bid_type 
FROM bids 

JOIN listings ON listingID = bid_listing 
JOIN users ON list_uID = userID 

ORDER BY bidID DESC"); 

$bids = $bids->result(); 
$data['bids'] = $bids; 

次に、データを印刷するためにforeachを実行しています。例:

<?$i = "0"; foreach ($bids as $l): ?> <? echo $l->listing_title;?> 

私は、リスティングタイトルの後に入札/結果の数を追加したいと思います。

おかげ

+0

'数($入札を)CodeIgniterは使用してみてください? – JazZ

+1

http://php.net/manual/en/mysqli-result.num-rows.php –

+0

@MajidFouladpour彼は 'mysqli'を使っているようには見えません。 'result()'メソッドはありません。 – Barmar

答えて

0

あなたの問題のため、この解決策を試すことができません:

$bids = $this->db->query("SELECT bidID,listingID, listing_title, bid_date, username, vintage, starting_, bin, 
amount, sold, sold_date, bid_type 
FROM bids 

JOIN listings ON listingID = bid_listing 
JOIN users ON list_uID = userID 

ORDER BY bidID DESC"); 

$bids = $bids->result(); 
$no_0f_bids = $bids->num_rows(); 
$data['bids'] = $bids; 
$data['no_0f_bids'] = $no_0f_bids; 

その後、ビューファイルで入札のない印刷を行うことができます。

<?php 
echo "No of Bids : ".$no_0f_bids; 
foreach ($bids as $l): 
    echo $l->listing_title; 
endforeach; 
?> 

と私はそれに役立つことを願っていますGenerating codeigniter Query Results.

ためのこのリンクを訪問することができます。あなたは$db->RecordCount() この機能は、あなたが望むリターン・カウントになります持っている必要があり

$bids = $this->db->query("SELECT SQL_CALC_FOUND_ROWS bidID,listingID, listing_title, bid_date, username, vintage, starting_, bin, amount, sold, sold_date, bid_type FROM bids JOIN listings ON listingID = bid_listing JOIN users ON list_uID = userID ORDER BY bidID DESC"); 

$total = $this->db->query("SELECT FOUND_ROWS() as total"); 
$data['bids'] = $bids->result(); 
$data['bids_total'] = $total->row()->total; 

それとも

$bids = $this->db->query("SELECT bidID,listingID, listing_title, bid_date, username, vintage, starting_, bin, amount, sold, sold_date, bid_type FROM bids JOIN listings ON listingID = bid_listing JOIN users ON list_uID = userID ORDER BY bidID DESC"); 

$data['bids'] = $bids->result(); 
$data['bids_total'] = $bids->num_rows(); 

それとも

$data['bids_total'] = count($data['bids']); 
+0

私はもともと何か似たような試みをしましたが、私はあなたのものをテストしましたが、同じエラーが発生します:非オブジェクト上のメンバ関数num_rows()を呼び出す –

+0

フルコントローラコードをここに投稿してください。 –

0

はこれを試してみてください。

+0

上記をどのようにエコーしますか? –

+0

あなたのフレームワークは何ですか –

+0

codeigniterはfwです –

0