2012-06-11 39 views
0

你能告訴我爲什麼當我點擊呼叫時,我的數據沒有發佈到我的動作?表單數據不張貼到uri

<body> 
    <?php 
     $login = '1236567'; 
     $password = '10152930'; 
     $officeNumber = array('0212177899','027899899','09111'); 
    ?> 
    <div id="wrapper"> 
     <form method="POST" action="https://live.domain.co.nz/call.php?login=<?php echo $login; ?>&password=<?php echo $password; ?>&aparty=<?php echo $number; ?>phone&bparty=<?php echo $number;?>"> 
        <?php 
         echo '<label for="officeNumbers">Office Number: </label>'; 
         echo '<select name="officeNumbers">'; 

         foreach($officeNumber as $number) 
         { 
          echo '<option value="'.$number.'">'.$number.'</option>'; 
         } 
         echo '</select>'; 
        ?> 
       <label for="callTo">Call: </label><input type="text" id="callTo"> 
       <input type="submit" value="Call"> 
      </form> 
     </div> 
</body> 
</html> 
+0

如果您對某些客戶端代碼不符合您的期望有疑問,請向我們展示客戶端代碼,而不是生成它的一些PHP。 – Quentin

+0

使用[驗證器](http://validator.w3.org/),你有一些明顯的機器可檢測錯誤。 – Quentin

+0

標籤上的'for'屬性引用表單控件的** id **。有些標籤沒有與控件相關聯,因爲它們試圖使用**名稱**。 – Quentin

回答

1

您的文字輸入:

<input type="text" id="callTo"> 

...沒有name屬性,因此它不能成爲一個成功的控制(因此提交任何數據)。

給它一個name屬性。

+0

謝謝,但仍然沒有告訴我爲什麼我的數據沒有發佈在動作 –

+0

@JessMcKenzie - 在URI中編碼的數據將在查詢字符串中發送,而不是正文,所以雖然它將作爲一個post請求,它不會在$ _POST中,而是在$ _GET中(因爲$ _GET是PHP放置查詢字符串數據的地方)。 – Quentin