2012-08-07 97 views
0

我正在用一個下拉列表和一個按鈕設計簡單的HTML。PHP-HTML嵌入代碼

我想知道如何將選定的下拉項檢索到php變量中。我正在編寫php-html嵌入代碼。我很困惑如何在php變量中獲得特定的值。另外,我想知道如何在選擇特定項目後下載文件。我已經創建了下載文件,但我不知道如何從選定的下拉項中調用這些文件。

任何幫助將不勝感激。 謝謝。

我貼我正努力一些PHP,HTML代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>Get All Reports</title> 
</head> 
<body> 
<center> 
<div> 
<form action=""> 
<table> 
<tr><td> 
<select onchange="ReportList(this.form,0)"> 
<option value="SubscriptionReport.php" >Subscription Report 
<option value="DownloadHistoryReport.php">DownloadHistory Report 
<option value="AppEventReport.php">AppEvent Report 

</select> 


</td></tr> 
<tr><td> 
<button name="isSubmit">Download</button> 
</td></tr> 
</table> 
</form> 
</div> 
</center> 


</body> 
</html> 
+0

但如果我想訪問這個頁面中的這些字段,那麼我將如何檢索它?我不想將這些值發送到其他頁面,我喜歡在同一頁面中處理這些值。 – ashutosh 2012-08-07 15:38:57

+0

然後只需提交到「此」頁面。 (請參閱下面的答案)。 – Matt 2012-08-07 15:40:26

回答

1

該輸入的值將通過您的表單中使用任何方法進行傳遞。發送到的頁面將通過$_GET$_POST訪問表單輸入值,無論採用哪種方法。

<form method="post" action="process.php"> 
    <input type="text" value="3" name="myInput" id="myInputId" /> 
</form> 

會被訪問,在process.php,因爲這樣的:

<?php 
    $inputValue = $_POST['myInput']; 

注意,輸入經由其name而不是其id屬性通過。

對於GET表單提交:

<form method="get" action="process.php"> 
    <input type="text" value="3" name="myInput" id="myInputId" /> 
</form> 

將訪問,在process.php,因爲這樣的:

<?php 
    $inputValue = $_GET['myInput']; 

注意,當您通過GET提交表單,它追加查詢字符串的鍵/值對:

http://www.example.com/process.php?myInput=3 

如果你想subm將您的表單保存到它所在的同一頁面,只需將action屬性留空即可。

<form method="post" action=""> 
    <input type="text" value="3" name="myInput" id="myInputId" /> 
</form> 

注: PHP只能訪問表單變量一旦他們已經提交。如果你想檢索一個表單元素的值,你必須使用javascript事件處理程序。 PHP是服務器端,不能對用戶輸入做出反應,直到服務器收到它。 Javascript是客戶端。它「看到」用戶在瀏覽器中所做的事情,並且可以處理這些事件。

+0

所以,我可以通過屬性id訪問這些值,因爲html中的下拉列表中沒有屬性名稱,所以下面的代碼將工作? $ reportList = $ _POST ['subscription']; – ashutosh 2012-08-07 15:48:49

+0

@ashutosh號碼你誤解我了。您只能在PHP中提交數據後才能檢索數據。我會詳細解釋我的答案。 – Matt 2012-08-07 15:50:27

+0

okk ..你最後的編輯,清除了我的想法。現在我懂了。非常感謝您的回答和信息! :) – ashutosh 2012-08-07 15:55:27