我正在尝试更新我的购物车(通过客户更改销售产品的数量),并且我正在使用购物车库。当我提交更新按钮时,页面将根据需要重定向,但它不会更新并显示之前的值,我不会收到任何错误。我的代码出了什么问题???
我的更新控制器代码是
public function update($in_cart = null){
$data= $_POST;
$this->cart->update($data);
//show cart page
redirect ('cart','refresh');
}
我的观看代码是
<form action="cart/update" method="post">
<table cellpadding="6" cellspacing="1" style= "width: 100%" border="0" >
<tr>
<th>QTY</th>
<th>item description</th>
<th style="text-align: right">Item Price</th>
</tr>
<?php $i=1; ?> <!-- $i=1 is a counter -->
<?php foreach ($this->cart->contents() as $items) : ?>
<input type="hidden" name="<?php echo $i.'[rowid]'; ?>" value="<?php echo $items['rowid'];?> "/>
<tr>
<td id="cart-qty"><input type="text" name="<?php echo $i.'[qty]'; ?>" value="<?php echo $items['qty'];?>" maxlength="3" size="5"> </td>
<td><?php echo $items ['name'];?></td>
<td style="text-align: right"><?php echo $this->cart->format_number($items['price']);?> </td>
</tr>
<?php $i++ ; ?>
<?php endforeach; ?>
<tr>
<td></td>
<td class="right"><strong>Total</strong></td>
<td class="right" style="text-align: right">$<?php echo $this->cart->format_number($this->cart->total());?></td>
</tr>
</table>
<br>
<p><button class="btn btn-default" type="submit">Update Cart</button>
<a class="btn btn-default" href="cart">go to cart</a></p>
</form>
答案 0 :(得分:0)
尝试将Controller功能修改为:
public function update(){
$rowid=$this->input->post('rowid');
$cart=$this->cart->contents();
foreach ($cart as $cart) {
//now match your item whose qty is updated
if($rowid==$cart['rowid']){
$qty=$cart['qty'];
}
}
$data=array(
'rowid'=>$rowid,
'qty'=>$qty+1
);
$data=$this->cart->update($data);
redirect ('cart','refresh');
}
答案 1 :(得分:0)