2009-09-04 59 views
1

我有一个下拉列表,其中有需要通过查询字符串传递的选项。我会如何去做这件事?另外,任何人都可以列出一个方法来做到这一点,既使用按钮,也不使用按钮?谢谢!PHP - 通过查询字符串传递下拉列表选项

+0

使用GET方法。 – adatapost 2009-09-04 06:19:06

+0

对不起,您通过“传递查询字符串”是什么意思?在MySQL查询中? “没有按钮”是什么意思?你想使用ajax将数据传回服务器吗? – Anthony 2009-09-04 06:26:13

回答

1
<form method="get"> 
<select multiple="multiple" name="things[]"> 
... 
</select> 
<input type="submit" value="submit"/> 
</form> 

<?php  
if(isset($_GET['things'])) { 
    foreach($_GET['things'] as $thing) { 
     echo $thing . '<br />'; 
    } 
} 
?> 
+0

谢谢。你为我提供了很多帮助。哈哈 – user 2009-09-04 06:31:33

+0

我还不清楚这个问题解决了什么。是否使用名称中的括号来使其成为数组? – Anthony 2009-09-04 06:35:40

+0

@Anthony - 他说'选项',所以我想他的意思是一个多选,他想知道如何将选定的选项数组传递给服务器,该选项的名称属性后面的[]是[],并且知道转弯$ _GET ['things']到数组中。 – karim79 2009-09-04 06:44:52

0

没有一个按钮:

<form method="get"> 
<select multiple="multiple" name="things[]" onchange="this.form.submit()"> 
... 
</select> 
</form> 
+1

为了更容易访问和向后兼容,我会去: '' – Anthony 2009-09-04 06:28:40

+0

erp ... Anthony 2009-09-04 06:29:16

1

基于贾尼的回应,你希望有形式没有提交按钮,但仍然有备份按钮,如果用户没有JavaScript的?您可以使用noscript来覆盖:

<form action="script.php" method="get"> 
    <div> 
    <select name="options" onchange="this.form.submit()"> 
      <option value="1">1</option> 
      <option value="2">2</option> 
      <option value="3">3</option> 
    </select> 
    <noscript> 
      <input type="submit" value="Go!" /> 
    </noscript> 
    </div> 
</form> 
相关问题