我通过表单提交将一些会话变量保存在我的网站中。使用此表单,客户可以为其产品添加多个维度。对于每次提交,网站都会显示所选的维度。因此,有时可以看到多种配置。
客户必须能够删除此类配置(因此是SESSION的一部分)。
使用这段代码,我将配置保存在SESSION:中
if(isset($_POST['wz_submit_saving_1'])) :
$straight_saving = array(
'wz_str_saving' => $_POST['wz_str_saving'],
'wz_saving_a' => $_POST['wz_saving_a'],
'wz_saving_b' => $_POST['wz_saving_b'],
'wz_submit_saving_1' => $_POST['wz_submit_saving_1']
);
$_SESSION['straight_saving'][] = $straight_saving;
endif;
我展示了它们,每个配置都有一个删除链接:
<a class="remove_link" href="http://www.myurl.com/?wz_submit_saving_remove_1">Verwijder sparing</a>
使用以下代码,我删除了会话。
if(isset($_GET['wz_submit_saving_remove_1'])) :
unset($_SESSION['straight_saving']);
endif;
但当我这样做的时候,SESSION中的所有配置$direct_saveng;都不见了。因此,我只需要从我单击的删除按钮的会话中删除配置,而不是全部删除。
有人能告诉我使用GET链接的方式是否正确,或者我需要做其他事情吗?
谢谢!
经过我们的聊天,我们更清楚了:
你想取消设置你在会话中推送后相应添加的每个保存:
foreach($_SESSION['straight_saving'] as $key => $saving) {
//You can create a link that says ?saving=$key
}
然后,您可以通过执行unset($_SESSION['straight_saving'][$_GET['saving']]
来取消设置正确的会话。别忘了在里面放一些支票,这样可以避免人们在URL中放任何东西。