2012-01-03 74 views
1

如何在可以通过多个页面进行的会话中包装选择内容?在会话中携带复选框选择

这是我有:

session_start(); 


<form action="checkbox-form.php" method="post"> 
Select your options<br /> 
<input type="checkbox" name="options[]" value="A" />A<br /> 
<input type="checkbox" name="options[]" value="B" />B<br /> 
<input type="checkbox" name="options[]" value="C" />C<br /> 
<input type="submit" name="formSubmit" value="Submit" /> 
</form> 


var_dump($_POST['options']); 


foreach($_POST['options'] as &$option){ 
    mysql_real_escape_string($option); 
} 


$insert = "INSERT INTO submitted (statuses)  
VALUES ('". implode(",", $_POST['options']) ."')";  

$query = mysql_query($insert) or die ("Error: ".mysql_error()); 

那么,如何我把$_POST['options'];在一个会话。我试着做

$_SESSION['options'] = mysql_real_escape_string($_SESSION['options']); 

当我这样做,我得到“数组”作为结果。

回答

0

只是做

session_start(); 
$_SESSION['options'] = $_POST['options']; 

,您可以通过

$_SESSION['options'][$i] where $i <count($_SESSION['options']) 
+0

感谢,但我忘了分享我确实有在session_start(); – AAA 2012-01-03 20:03:25

2

您存储会话变量数组和抱怨它返回我一个数组访问复选框值!

当然它会返回一个数组...访问相同的使用的特定键..

$ _SESSION [ '选项'] [0] $ _SESSION [ '选项'] [1] $ _SESSION [ '选项'] [2]

其中连续对应的A,B,形式基于C的复选框...

+0

这是我没有得到。你是什​​么意思0,1,2? – AAA 2012-01-03 20:02:59

+0

[0],[1],[2]是数组的索引。 – 2012-01-03 20:06:48

+0

这意味着您的所有3个复选框值都存在于会话中。如果您想检查A复选框的值,作为:$ _SESSION ['选项'] [0] – 2012-01-03 20:24:13