2009-09-04 75 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> 
相關問題