我只是试图通过会话变量传递我的复选框值,以供用户在某个时刻返回。转到我的第一页POSTING
后,我希望这些选择存储在SESSION
变量中。到目前为止,我没有运气这个问题。我的代码如下。
这是我的复选框的html。我有大约15个与以下名称相同的复选框。我拿了所有这些复选框并在另一个脚本中将它们分解以插入数据库。
<input type='checkbox' name='list[]' id='product' value='Product'></input>
这里我使用复选框的POST设置我的变量。
$checkboxes = $_POST['list'];
$_SESSION['list'] = $checkboxes;
如何将这些复选框选择传入和传出会话变量以选择上一页的元素?
答案 0 :(得分:3)
变化:
<input type='checkbox' name='list[]' id='product' value='Product'></input>
要
<input type='checkbox' name='list[0]' id='product' value='Product'></input>
<input type='checkbox' name='list[1]' id='product' value='Product'></input>
etc.
并使用foreach:
好的。我们知道在$_SESSION['list']
我们只检查了一些!
foreach ($_SESSION['list'] as $key => $value)
{
echo '<input type="checkbox" name="list['$key']" value="'.$value.'" checked="checked >';
}
答案 1 :(得分:0)
以为我分享了在会话中存储html表单复选框值的代码/解决方案。我的搜索无法让我涵盖所需的所有情况。
我的情况包括我将默认状态传递为选中或未选中。
HTML表单代码:
<input type="hidden" name="product[]" value = 0>
<input name="product[]" type="checkbox" value = 1 <?php echo (($productvalue == 1) ? 'checked' : '')?>>
PHP表单处理代码:
$productvalue = ((isset($_POST['product'])) ? array_sum((array)$_POST['product']) : ((isset($_SESSION['productsession'])) ? $_SESSION['productsession'] : 0));
$_SESSION['productsession'] = $productvalue;