0

モデル

    $data   =   array();
    $session_id = $this->session->userdata('id'); 

    $q = $this->db->get_where('cust_orders', array('cust_id' => $id));


        foreach ($q->result() as $row)
        {
            $data['id'] = $row->cust_id; 
            $data['orders'] = $row->cart; 

        }
            return $data;

コントローラ

dataをビューに渡します

意見

<?php foreach($_orders as $key => $item) : ?>
<tr>

    <td>
    <?php 
        $price = $item['price']; #change this to order status 

        switch ($price) 
        {
        case (64); $UPSTrack = '1Z12345E1512345676'; #Shipped add tracking number
              echo 'Shipped <br> <a href="http://wwwapps.ups.com/WebTracking/track?track=yes&trackNums='.$UPSTrack.'">Track My Order</a>'; 
              break;

        case (88);
              echo 'Shipped'; 
              break;

        default;
              echo 'Processing'; 
              break;
        }
    ?>

    </td>




    <td>
    <?php foreach ($item['options'] as $option => $value) 
            {
            echo '<span class="option">'.$option . ': </span> <span class="options">' . $value . '</span>';
            } 
    ?>
    </td>


    <td><?php echo $item['id']; ?></td>

    <td><?php echo $item['qty'];  ?></td>

    <td><?php echo number_format($item['price'],2); ?></td>

</tr>    



<?php endforeach; ?>

オプションは配列です

変数foreachに含まれる をループするaを含むarray$data['orders'] = $row->cart;

データベースで、cust_ordersテーブルを検索しています。顧客は、複数の注文を意味する行をcust_id超えている可能性があります。1

問題は、最後の行だけをループしていることです。cust_idis = toのすべての行をループする必要があります$session_id

foreach コードMODELに変更 $data['id'] = $row->cust_id;する と、問題が発生する可能性があります。echo $row->cust_id;' I am able to see all of the rows which match the customers id, but it breaks my

すべての cust_orders == toが表示される ようvaluesに、クエリで返されたを適切に割り当てるにはどうすればよいですか?MODEL$session_id

4

1 に答える 1

1

現在、配列を各顧客の値で上書きしているため、多次元配列が必要です。

以下のようになります

編集:モデルのforeachを以下のように変更します

   foreach ($q->result() as $row)
    {
        $data['id'] = $row->cust_id; 
        $data['orders'][] = $row->cart; 

    }
于 2012-10-09T17:51:04.150 に答える