永发信息网

php中select 菜单输出问题,很简单,大神请看,谢谢哈

答案:5  悬赏:0  手机版
解决时间 2021-03-17 03:40
  • 提问者网友:焚苦与心
  • 2021-03-16 21:06
<form name="form2" action="new5.php" method="post" >
<select name="select[]" size="5" multiple >
<option value="公司发展" selected>公司发展</option>
<option value="管理制度">管理制度</option>
<option value="后勤服务">后勤服务</option>
<option value="员工薪资">员工薪资</option>
</select>
<input name="sub" type="submit" value="提交">
</form>
<?php
if($_POST["select[]"]!==""){
echo "您选择的意见主题为:<br>";
}
for($i=0;$i<count($_POST["select[]"]);$i++)
echo $_POST["select[$i]"]." ";
?>

演示为:

Notice: Undefined index: select[] in G:\xampp\htdocs\chengxu\new5.php on line 43
您选择的意见主题为:

Notice: Undefined index: select[] in G:\xampp\htdocs\chengxu\new5.php on line 46
最佳答案
  • 五星知识达人网友:举杯邀酒敬孤独
  • 2021-03-16 21:21
索引应该是select,我帮你修改了下,PHP那段代码应该是
<?php
if(isset($_POST["select"]) AND $_POST["select"]!==""){
echo "您选择的意见主题为:<br>";
}
for($i=0;$i<count($_POST["select"]);$i++)
echo $_POST["select"][$i]." ";
?>
全部回答
  • 1楼网友:何以畏孤独
  • 2021-03-17 00:05
<?php if($_POST["select"]!==""){ echo "您选择的意见主题为:<br>"; } for($i=0;$i<count($_POST["select"]);$i++) echo $_POST['select'][$i] ." "; ?>
  • 2楼网友:琴狂剑也妄
  • 2021-03-16 22:29
Change the "... if($_POST["select[]"])]!==..." to "... if($_POST["select"])]!==..." and change the "select[]" in the form to "select" too.
  • 3楼网友:笑迎怀羞
  • 2021-03-16 21:50
好吧,有必要给你说下表单的name中如果出现[]php的底层是怎么处理的了,php对那些name中如果出现[]的表单处理和一般的表单处理是不一样的,例如你的name="select[]" php会认为你有很多name="select"的表单 ,每个都用name="select[]" 来告诉php不要覆盖前一个相同name的值,所以你后台用post获取select的时候是获取到一个数组。 你的程序改了一下,看看你就明白了。 <form name="form2" action="" method="post" > <select name="select[]" size="5" > <option value="公司发展" selected>公司发展</option> <option value="管理制度">管理制度</option> <option value="后勤服务">后勤服务</option> <option value="员工薪资">员工薪资</option> </select> <input name="sub" type="submit" value="提交"> </form> <?php if($_POST["select"]!==""){ echo "您选择的意见主题为:<br>"; for($i=0;$i<count($_POST["select"]);$i++) echo $_POST["select"][$i]." "; } ?>
  • 4楼网友:青尢
  • 2021-03-16 21:30
好吧,有必要给你说下表单的name中如果出现[]php的底层是怎么处理的了,php对那些name中如果出现[]的表单处理和一般的表单处理是不一样的,例如你的name="select[]" php会认为你有很多name="select"的表单 ,每个都用name="select[]" 来告诉php不要覆盖前一个相同name的值,所以你后台用post获取select的时候是获取到一个数组。 你的程序改了一下,看看你就明白了。
<
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯