我看过这篇文章PHP, pass array through POST 但是不能让它发挥作用。
我的表格如下:
<applications><h2>Applications</h2><br><input type="checkbox" name="apps[]" value="gg">gg<br><br>
<input type="checkbox" name="apps[]" value="aa">aa<br><br>
<input type="checkbox" name="apps[]" value="bb">bb<br><br>
<input type="checkbox" name="apps[]" value="cc">cc<br><br>
<input type="checkbox" name="apps[]" value="dd">dd<br><br>
</applications>
<servers>
<h2>Servers</h2><br><input type="checkbox" name="serv[]" value="servera">servera<br><br>
<input type="checkbox" name="serv[]" value="serverb">serverb<br><br>
</servers>
<countries1><h2>Countries</h2><br><input type="checkbox" name="country" value="uk">UK<br><br>
<input type="checkbox" name="country[]" value="germany">Germany<br><br>
<input type="checkbox" name="country[]" value="france">France<br><br>
</countries1>
<countries2>
<input type="checkbox" name="country[]" value="spain">Spain<br><br>
<input type="checkbox" name="country[]" value="sweeden">Sweeden<br><br>
</countries2>
<submitb>
<?
session_start();
$_SESSION['country']=$country;
$_SESSION['serv']=$serv;
$_SESSION['apps']=$apps;?>
<input type="submit" value="Update">
</submitb>
</form>
然后在我的检索端:
$apps=$_SESSION['apps'];
$countries=$_SESSION['country'];
$servers= $_SESSION['serv'];
编辑:有人可以告诉我这里我做错了什么吗?我收到:
未定义的索引:第41行的C:\ wamp \ www \ notifcation system \ done.php中的应用程序
答案 0 :(得分:4)
<?php
$apps=$_SESSION['apps']; /* fix missing semicolon */
$countries=$_SESSION['country'];
$servers= $_SESSION['serv'];
?>
对于您的其他问题:
Undefined index: apps in ...
简单地表示未定义$apps
。这不是错误,而是通知。
试试这个
if(!isset($_SESSION['apps'])){
$apps=$_SESSION['apps'];
} // etc
答案 1 :(得分:2)
请注意session_start();
应始终位于页面的第一行,然后您将在稍后开始添加内容。
session_start();
也应该在您需要访问会话的每个页面上。
如上所述@subzero,永远不会忘记PHP中所有重要的;
分号,这些东西可能会破坏您的代码。