以下是我到目前为止所遵循的步骤:
首先,我已经为我的会话初始化了命名空间
$guest_events = new Zend_Session_Namespace('guest_events');
然后在会话中添加一个数组
$guest_events-> events = array();
然后我在数组中添加了一些事件。
看起来像:
Array
(
[amount_0] => 1
[event_id_0] => 69
[event_title_0] => Sunday Collection
[amount_1] => 11
[event_id_1] => 78
[event_title_1] => Test event
)
现在在我的另一个控制器中,当我尝试通过 ajax 实现编辑量功能时:
$event_id = $this-> getRequest()-> getParam('event_id');
$edit_amount = $this-> getRequest()-> getParam('edit_amount');
$event_title = $this-> getRequest() -> getParam('event_title');
$guest_events = new Zend_Session_Namespace('guest_events');
$event_array = $guest_events-> events;
for ($i = 0; $i < 5; $i ++)
{
if (array_key_exists('event_id_'.$i, $event_array))
{
if ($event_array['event_id_'.$i]==$event_id && $event_array['event_title_'.$i]==$event_title)
{
// unset the amount and replace with new one
unset($guest_events-> events-> amount_0);
$guest_events-> events-> amount_0 = $edit_amount;
}
}
}
我已经尝试了一切,但会话变量保持不变..谁能告诉为什么?:(