0

codeigniterを使ってショッピングカートを作りました。

カートに書籍の詳細をいくつか追加しています。異なる div で特定のカート オプションの値を表示したいと思います。しかし、私はそれを示すことができません。

以下のコードを試しましたが、これですべてのオプション値を一度に取得しています。

私を助けてください。

Controller.php

 function add($id=0)
{   
  if($id>0)
     {
       $query = $this->Booksmodel->get($id);
       $bid = $query['book_id']; 
       $qnty = $query['quantity'];  
       $price = $query['price'];  
       $title = $query['book_title'];  
       $covername ='Hard Cover';  
       $afname = $query['auth_firstname'];  
       $alname = $query['auth_lastname'];  
       $aname=$afname.' '.$alname;
       $img = $query['img1'];    
       $data = array
          (
           'id'      => $bid,
           'qty'     => $qnty,
           'price'   => $price,
           'name'    => $title, 
            'options' => array('aname' => $aname, 'covername' => $covername,'Bimg' => $img)
          );
       $this->cart->insert($data);
          $this->load->view('cart/cart',$data);  
     } 
} 

view.php

   ---------------
   ----------------
 <?php $i = 1; ?>
           <?php foreach($this->cart->contents() as $items): ?>                                                     
             <td> //i want to display here only the value of the a name
                 <?php foreach ($this->cart->product_options($items['rowid']) as $aname => $option_value): ?>
                          <?php  echo $option_value;    ?> 
                           <?php endforeach; ?> 
            </td>                                                                                                      
          <?php $i++; ?>
        <?php endforeach; ?>
           -----------------
            ----------------

var_dump($this->cart->contents()) ;

出力 (カートに 1 個のアイテム):

          array(1) { ["3705f19b9e71159a8b1a84079cfa8a3f"]=> array(7) { ["rowid"]=> string(32) 
         "3705f19b9e71159a8b1a84079cfa8a3f" ["id"]=> string(2) "17" ["qty"]=> string(1) "1" ["price"]=> 
         string(2) "46" ["name"]=> string(39) "Budhhiyoga Of the Gita And other Essays" ["options"]=> 
          array(3) { ["aname"]=> string(16) "Sri Anirvan" ["covername"]=>  string(11) 
        "Hard Cover" ["Bimg"]=> string(13) 
        "DSC00a009.JPG" } ["subtotal"]=> int(46) } }
4

1 に答える 1

2

アップデート

今回は当たりだったと思います

<?php $i = 1; ?>
       <?php foreach($this->cart->contents() as $item): ?>                                                     
         <td> //i want to display here only the value of the a name
              <?php  echo $item['options']['covername'];    ?> 
        </td>                                                                                                      
      <?php $i++; ?>
    <?php endforeach; ?>
于 2013-02-27T16:47:19.937 に答える