如何以数组形式添加会话值&在ci中获取会话值?

时间:2014-06-23 20:17:44

标签: php codeigniter session

我的视图中有一个链接,如下所示。

<a href="<php echo site_url('page/cart/'.$id)"; ?>Cart</a>

此处,$ id是产品ID。

控制器: 功能购物车($ id)

{
$this->session->set_userdata('ids[]', $id);
$data['title']='My Website | Cart';
$data['content']=$this->load->view('page/cart', $data, TRUE);
$this->load->view('template', $data);
}

查看:cart.php

<?php
echo $this->session->userdata('ids[]');
?>
<?php if($cart_ids!=''): ?>
<div class="cart-info">

<table>
<thead>
<tr>
<td class="image">Product Image</td>
<td class="name">Product Name</td>
<td class="id">Product Id</td>
<td class="quantity">Quantity</td>
</tr>
</thead>
<tbody>
<?php foreach ($cart_ids as $cart_id): ?>
<tr>
<td class="image">Product Image</td>
<td class="name">Product Name</td>
<td class="id">Product Id</td>
<td class="quantity">Quantity</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>

首先,当我点击购物车时,应该以数组形式设置一个id会话,当我第二次点击时,应该将id的值添加到会话中而不替换前一个会话。其次,我想在foreach条件下从会话中获取id的值。

1 个答案:

答案 0 :(得分:0)

我们必须在当前会话中注入新会话 所以基本上:

 $new_session = $this->uri->segment(3); // fetches the id from ('page/cart/'.$id)
 $sessions = $this->session->userdata('sessionList');
 $sessions[] = $new_session // Or use $this->uri->segment(3) directly
 $this->session->set_userdata('ses_list', $ses_list);

Session Doc