2013-04-23 27 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 2013-04-23 21:49:47

+0

我應該顯示完整的表單代碼嗎? – Mike 2013-04-23 21:52:51

回答

2

那麼,爲什麼你使用$_POST而不是$_GET<select>?如果表格是通過POST提交的,mydrop也應該在$_POST

這條線:

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

也許應該是這樣的:

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

AGGGHHH我真是個白癡!是的,這當然是作品! – Mike 2013-04-23 21:57:12

1

確保每個<option>需求value屬性被填充那是什麼,是POST版的形式。

您使用的是$image=$_GET['mydrop'];,但它應該是$image=$_POST['mydrop'];$_GET適用於URL參數,例如URL末尾的?foo=bar$_GET['foo']將是bar

+0

但是,這些選項取決於此數字可能更改的目錄中有多少個文件 – Mike 2013-04-23 21:50:28

+1

@Mike,但您將通過POST獲取所選選項,如表單中的其他字段。 – Alfabravo 2013-04-23 21:56:40