向PHP Session数组添加新值


Adding new value to PHP Session array

我的情况是,当加载到这个页面时,会话中有项。php,

现在在这个页面。php的表单上提交它张贴一些值到相同的页面。php,我试图通过以下代码添加张贴值到现有的会话值,

    if (isset($_POST['special'])) {
    for ($i = count($_SESSION['item']); $i <= count($_SESSION['item']); $i++) {
        $index = ++$i;
        $_SESSION['price'][$index] = $_POST['price'];
        $_SESSION['item'][$index] = $_POST['name'];
    }
}

我正在做以下事情来重新安排项目(因为我确实删除了特定的项目).

$k=0;
for ($j = 1; $j <= count($_SESSION['item']); $j++) {
if ($_SESSION['item'][$j] != '') {
    ++$k;
    $itemName[$k] = $_SESSION['item'][$j];
    $itemPrice[$k] = $_SESSION['price'][$j];
    }
$_SESSION['item'] = $itemName;

$_SESSION['price'] = $itemPrice;

在$_SESSION['item']内容的echo上,我发现page.php中新增了可用的会话,但是当我移动到下一页时,新增的会话单独丢失。

您需要在脚本中使用session_start()。如果不是,则在页面之间移动时会话将不会继续。

<?php
session_start();
// Your code
?>