在php中使用会话变量

时间:2015-10-21 13:44:59

标签: php html

Click here to view the design page

我有2页: index.php (我在文本框中输入品牌名称,点击提交后我需要在同一页面的下拉框中查看我添加的品牌)和产品页面(我可以在其中编辑我在索引页面中选择的品牌)。

我没有使用数据库,而是试图将值存储在会话变量中。我需要知道如何使用动态会话变量,以便每次将新品牌添加到下拉菜单中时...

的index.php

<body><div>
<form name="brand" method="post" action="brand_action.php">
Brand Name: <input type="text" name="brand" id="brand"><br /><br />
<input type="submit" value="Submit">
</form>
</div>
<div>
<?PHP
if(isset($_SESSION["bname"]))
{?>
<form name="add" action="product.php" method="post">

Brands :<select name="brand" id="brand">
<?PHP
$a=$_SESSION["bname"];
?>
<option value="<?PHP echo($a);?>"> <?PHP echo($a);?> </option>
    </select>
<input type="submit" name="Edit" value="EDIT" />
</form>

<?PHP
    }

?>
</div>

</body>

在index_action.php页面中,我想将每个品牌推入一个数组并存储在session变量中,并在index.php页面中调用它并将其放在下拉列表中。我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以将会话变量设为数组。将所有品牌名称存储在该数组中,然后循环遍历它。

以下是一个例子。

<?php
session_start();
if(!isset($_POST['brand']))
{
    $_SESSION['bname'] = array();
}
else
{
    $_SESSION['bname'][] = $_POST['brand'];
}
?>

<body><div>
<form name="brand" method="post" action="s.php">
Brand Name: <input type="text" name="brand" id="brand"><br /><br />
<input type="submit" value="Submit">
</form>
</div>
<div>
<?PHP
if(isset($_SESSION["bname"]))
{?>
<form name="add" action="product.php" method="post">

Brands :
<select name="brand" id="brand">
    <?php
    foreach($_SESSION['bname'] as $brand_name)
    {
        ?>
        <option value="<?PHP echo($brand_name);?>"> <?PHP echo($brand_name);?> </option>
        <?php
    }
    ?>
    </select>
<input type="submit" name="Edit" value="EDIT" />
</form>

<?PHP
    }

?>
</div>

</body>

还要记住,session_start应该始终是您需要使用会话的页面的第一行。