2013-04-23 4 views
1

Я использую кусок кода в форме для выпадающего списка, который заполняется по каталогу на веб-сайте:как захватить выпадающие значения меню в виде

<select name="mydrop" id="mydrop"> 
    <option value="" selected="selected">--a--</option> 
    <?php 
      foreach(glob(dirname(__FILE__) . '/images/*') as $filename){ 
      $filename = basename($filename); 
      echo "<option value='" . $filename . "'>".$filename."</option>"; 
     } 
?> 

</select> 

У меня есть два текста коробки и ввода текстовой области. Когда я выполняю свой php-файл, все значения данных есть, но не из этого выпадающего меню. Любые идеи почему?

Я использую:

$first=$_POST['first']; 
$last=$_POST['last']; 
$email=$_POST['email']; 
$table=$_POST['table']; 
$image=$_GET['mydrop']; //Doesn't work 
+0

Вы также закрыли поле выбора? '' отсутствует. – Kenneth

+0

Должен ли я показывать полный код формы? – Mike

ответ

2

Почему вы используете $_POST для всего остального, кроме $_GET для <select>? Если форма отправлена ​​через POST, mydrop также должен быть в $_POST.

Эта линия:

$image=$_GET['mydrop']; //Doesn't work 

следует, вероятно, это:

$image = $_POST['mydrop']; 
+0

AGGGHHH Я такой идиот! да, что работает, конечно! – Mike

1

Убедитесь, что атрибут каждого <option> потребности value быть заполнен Это то, что POST-й изд для формы..

Вы используете $image=$_GET['mydrop'];, но это должно быть $image=$_POST['mydrop'];. $_GET для URL-параметров, таких как ?foo=bar в конце URL-адреса. $_GET['foo'] будет bar.

+0

Но параметры определяются тем, сколько файлов находится в каталоге, этот номер может изменить – Mike

+1

@Mike, но вы получите выбранный параметр через POST, как и любое другое поле в форме. – Alfabravo

Смежные вопросы