2014-09-02 186 views
0

所以我试图在会话中存储我的表格数据,我正在阅读它,这就是我所拥有的。在会话中存储表格数据

$submit = $_POST["submit"]; 

session_start(); 

if(isset($submit)){setsessionvar();} 


function setsessionvar() { 


foreach($_POST as $fieldname => $fieldvalue) { 
    $_SESSION['form'][$fieldname] = $fieldvalue; 
    } 
} 

$textarea_value = $_SESSION['form']['textextarea']; 

echo "Textarea contained the value: ".$textarea_value; 

现在我明白这一点,它应该工作。我的问题是如何使用复选框并下拉?

我不认为它会影响下拉,因为我猜测它只会从列表中捕获选定的一个,但使用复选框从表单中转储数组。那么结果会是数组中的数组吗?或者它会通过窗体中的复选框数组循环,并单独加载项目?

+0

您也可以执行'$ _SESSION ['form'] = $ _POST'来代替在数组中循环并赋值。然后,所有发布的数据也将被分配。 – bzeaman 2014-09-02 19:39:10

回答

1

这是相同的仅较少的代码:

session_start(); 
if(isset($_POST['submit'])) { 
    $_SESSION['form'] = $_POST; 
} 

如果有一个复选框阵列那么这将是在两种情况下$_SESSION['form']阵列下方的阵列。

+0

这样排列在我想的数组中。所以$ textarray = $ _SESSION ['form'] ['textarray [1]'];从复选框数组位置1中获取它 – sstokes 2014-09-02 20:00:22