微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 多选框仅显示上次选择的值

我有一个多选框,允许我选择多个值,然后当我点击箭头时将它们添加到第二个选择框.现在这部分工作正常,我可以选择多个值.但是,当我将第二个选择框的值传递给变量时,变量只显示列表中最后一个项的值,而不是全部.

Javascript代码

   <script type="text/javascript">  
   $().ready(function() {  
   $('#add').click(function() {  
   return !$('#select1 option:selected').remove().appendTo('#select2');  
   });  
   $('#remove').click(function() {  
   return !$('#select2 option:selected').remove().appendTo('#select1');  
   });  
   });  
   </script>  

HTML代码

 <form action="insert_email_visitor_list1.PHP" method="get" name="form1" target="_self" id="form1">

    <select multiple id="select1" class="mulitiselect" name="select1">  
    <option value="1">Date/Time</option>  
    <option value="2">Company</option>  
    <option value="3">Location</option>  
    <option value="4">Nof Pages / Visit</option>
    <option value="5">Traffic Source</option>  
    <option value="6">Search Term</option>  
    <option value="7">Report</option>
    <option value="8">Classification</option>  
    <option value="9">Owner</option>
    <option value="10">Phone</option>
    <option value="11">Town</option>
    <option value="12">City</option>
    <option value="12">Country</option>
    <option value="12">Hostname</option> 
    </select>  


    <a href="#" id="add"><img src="images/add-arrow.png" alt="" /></a>
         selected Columns
    <a href="#" id="remove"><img src="images/remove-arrow.png" alt="" /></a>  


    <select multiple id="select2" name="select2" class="mulitiselect"></select>  

    <div class="bottom-img"><img src="images/popup-bottomimg.png" alt="" /></div>

    <button>
    <img src="images/info-icon.png" alt="" />
    </button>
    <input type="submit" name="send" id="send" value="Submit" />
    </form>

PHP代码

   $select2 = $_GET['select2'];
   echo "$select2";

基本上我只是在听取了一些建议,如果我这样做是正确的方法

谢谢

解决方法:

传递给PHP的字段必须以[]命名,例如SELECT2 [].如果没有这个,PHP会将传入的值视为单个值,并且只传入的LAST值将被放入$_GET.

名称上使用[]告诉PHP将其视为多值字段,它将在$_GET中创建一个数组,例如

$_GET['select2'][0] => 'first option selected';
$_GET['select2'][1] => 'second option selected';

等等…

请记住,多参数一个纯粹的客户端事物,PHP无法知道它是一个多选.它只会看到相当于

select2=foo&select2=bar&select2=baz

到达POST / GET,并选择传入的最后一个值.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐