2017-01-11 11 views
0

現在、私は自分のデータベース(payment_history)に挿入されたすべての支払いを表示しようとしていますが、htmlテーブルに表示したいのですが、試してみるたびに、私はphpmyadminのSQLテーブルに複数のユーザを持っています。私のデータベースからhtmlテーブルへの情報を表示するには?

php sided code。

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class payment_history_model extends MY_Model { 
public function __construct(){ 
    parent::__construct(); 
} 

public function getPaymentHistory(){ 
    $accounts = $this->model->fetch("*", PAYMENT_HISTORY, getDatabyUser(0), "id", "asc"); 
    if(!empty($accounts)){ 
     foreach ($accounts as $key => $row) { 
      $user = $this->model->get("*", USER_MANAGEMENT, "id = '".$row->uid."'"); 
      if(!empty($user)){ 
       $accounts[$key]->user = $user->fullname; 
      }else{ 
       $accounts[$key]->user = ""; 
      } 
     } 
    } 

    return $accounts; 
} 
} 

マイHTMLテーブルコード。 http://pastebin.com/Vc8tUvpHから

<thead> 
    <tr> 
     <th><?=l('User')?></th> 
     <th><?=l('Invoice')?></th> 
     <th><?=l('First name')?></th> 
     <th><?=l('Last name')?></th> 
     <th><?=l('Receiver email')?></th> 
     <th><?=l('Payer email')?></th> 
     <th><?=l('Package')?></th> 
     <th><?=l('Price')?></th> 
     <th><?=l('Currency')?></th> 
     <th><?=l('Street')?></th> 
     <th><?=l('City')?></th> 
     <th><?=l('Country')?></th> 
     <th><?=l('Payment date')?></th> 
     <th><?=l('Payment status')?></th> 
     <th><?=l('Option')?></th> 
    </tr> 
</thead> 
<tbody> 
    <?php 
     if(!empty($result)){ 
     foreach ($result as $key => $row) { 
    ?> 
    <tr class="pending" data-action="<?=cn('ajax_action_item')?>" data-id="<?=$row->id?>"> 
     <td> 
      <input type="checkbox" name="id[]" id="md_checkbox_<?=$key?>" class="filled-in chk-col-red checkItem" value="<?=$row->id?>"> 
      <label class="p0 m0" for="md_checkbox_<?=$key?>">&nbsp;</label> 
     </td> 
     <td><a href="<?=url('user_management/update?id='.$row->uid)?>"><?=$row->user?></a></td> 
     <td><?=$row->invoice?></td> 
     <td><?=$row->first_name?></td> 
     <td><?=$row->last_name?></td> 
     <td><?=$row->receiver_email?></td> 
     <td><?=$row->payer_email?></td> 
     <td><?=$row->item_name?></td> 
     <td><?=$row->mc_gross?></td> 
     <td><?=$row->mc_currency?></td> 
     <td><?=$row->address_street?></td> 
     <td><?=$row->address_city?></td> 
     <td><?=$row->address_country?></td> 
     <td><?=$row->payment_date?></td> 
     <td><?=$row->payment_status?></td> 
     <td><?=$row->Option?></td> 
    </tr> 
</tbody> 
+0

正確に何をしますか? – GabMic

+0

@Eitan htmlテーブルにデータベースの行を投稿します。しかし、私のデータベースからは1人のユーザーしか表示されませんが、データベース内のユーザーは1人以上です。 –

+0

あなたはどんな種類のモデルを使っているのですか? – GabMic

答えて

0

[OK]を、あなたのクラスMyModelfetch方法含まれています。今

function fetch($select = "*", $table = "", $where = "", $order = "", $by = "DESC", $start = -1, $limit = 0, $return_array = false) 
{ 
... 
} 

を、我々は問題が$where = getDatabyUser(0)にすることができると言うことができます。

おそらくgetDatabyUser(0)は、結果を1行に制限するwhere clauseを追加します。あなたが支払い履歴を取得しようとしているように今では見え

を引き起こすvar_dump(getDatabyUser(0))

  • オープンphpMyAdminのよう

    • 出力getDatabyUser(0)をし、where句同じを追加して確認してください。

      あなたは試してみてくださいuser with ID = 0

      getDatabyUser(0)を ""(空の文字列)に置き換えることでも確認できます。

      public function getPaymentHistory(){ 
          $accounts = $this->model->fetch("*", PAYMENT_HISTORY, "", "id", "asc"); 
          if(!empty($accounts)){ 
           foreach ($accounts as $key => $row) { 
            $user = $this->model->get("*", USER_MANAGEMENT, "id = '".$row->uid."'"); 
            if(!empty($user)){ 
             $accounts[$key]->user = $user->fullname; 
            }else{ 
             $accounts[$key]->user = ""; 
            } 
           } 
          } 
      
          return $accounts; 
      } 
      
  • 関連する問題