背景:
我有一个带有分页的复选框 表单。我这样做是为了每次按下分页按钮,它们是下一个,上一个, 1 , 2 , 3 , 4 或最后一页 - 他们都会从您所在的特定网页发布复选框值。
然后将POST值设置为SESSION。
以上所有工作正常!
问题:
让我说我在分页的第1页,我检查一个复选框和那个值,让我们说值为“111”,设置为POST和SESSION。然后我单击第2页,再选中一个值为“222”的复选框,然后单击第3页。
现在,当我点击第三个链接时,会话值被222覆盖!
我想要的是阵列为111,222。
我想保留第1页的前一个值,基本上只是继续添加到数组中,直到我完成,而不会被覆盖。
代码是:
if(isset($_POST['bundleAdId']))
$_SESSION['bundleAdId'] = $_POST['bundleAdId'];
据我所知,由于上面的代码,每当触发POST时,所有POST值都会一次又一次地输入到会话中。
但是我怎样才能添加到数组而不是OVERWRITING?
答案 0 :(得分:2)
您需要将其设为如下数组: -
$_SESSION['bundleAdId'][] = $_POST['bundleAdId'];
但首先应用检查: -
if(!empty($_POST['bundleAdId'])){
$_SESSION['bundleAdId'][] = $_POST['bundleAdId'];
}