2009-09-04 2 views
1

У меня есть раскрывающийся список, который имеет параметры, которые необходимо передать через строку запроса. Как мне это сделать? Кроме того, сможет ли кто-нибудь указать способ сделать это как с помощью кнопки, так и без использования кнопки? Спасибо!PHP - опция «Отбросить список вниз» через строку запроса

+0

Использовать метод GET. – adatapost

+0

Прошу прощения, что вы подразумеваете под словом запроса? Как в запросе mysql? и что вы подразумеваете под «без кнопки»? Вы хотите использовать ajax для передачи данных обратно на сервер? – Anthony

ответ

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

Спасибо. Человек, которому ты мне очень помог. haha – user

+0

Я все еще не понимаю, в чем проблема, что это было решено. было ли использование скобок в имени, чтобы сделать массив? – Anthony

+0

@ Энтони - он сказал «варианты», поэтому я понял, что он имел в виду мульти-выбор, и ему было интересно, как получить массив выбранных параметров на сервере, а получение - [] после атрибута имени select, и зная, что это $ _GET ['вещи'] в массив. – karim79

0

Без кнопки:

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

Чтобы быть более доступным и обратно совместимым, я бы пошел с: '' – Anthony

+0

erp ... Anthony

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>