2011-01-11 74 views
1

我一直在做HTML網站一段時間,我一直擔心製作表單,所以我使用表單生成器。如何創建HTML網頁表單?

這次我決定自己想做。我知道的基本知識,一個形式看起來是這樣的:

<form id="mail_form"> 
     <div> 
      <input type="text" name="subject" id="subject"/> 
     </div> 
     <div> 
      <textarea name="message" id="message"></textarea> 
     </div> 
     <div> 
      <input type="submit" name="submit" id="submit" value="Send"/> 
     </div> 
</form> 

但使窗體實際工作,在您看來,是什麼這樣做既簡單又有效的最佳方式?

謝謝

+1

什麼不行? – 2011-01-11 09:21:34

+0

你想使用哪種服務器技術? – karlis 2011-01-11 09:23:19

回答

0

首先,我建議配對形式到它的本質:

<form id="mail_form"> 
    <input type="text" name="subject" id="subject"/> 
    <textarea name="message" id="message"></textarea> 
    <input type="submit" name="submit" id="submit" value="Send"/> 
</form> 

然後添加在一些語義信息:

<form id="mail_form"> 
    <label for="subject">Subject:</label> 
    <input type="text" name="subject" id="subject"/> 

    <label for="message">Message:</label> 
    <textarea name="message" id="message"></textarea> 

    <input type="submit" name="submit" id="submit" value="Send"/> 
</form> 

然後使用fieldset元件段的形式進入相關的組件:

<form id="mail_form"> 
    <fieldset class="message"> 
     <label for="subject">Subject:</label> 
     <input type="text" name="subject" id="subject"/> 

     <label for="message">Message:</label> 
     <textarea name="message" id="message"></textarea> 
    </fieldset> 

    <fieldset class="submitReset"> 
     <input type="submit" name="submit" id="submit" value="Send"/> 
    </fieldset> 
</form> 

此時,您需要將信息添加到form的開始標記給予的指令爲你想在提交給發生什麼,以及如何:

<form id="mail_form" action="http://path.to.server-side-script.com/script.php" method="post" <!-- or 'get' -->> 

一旦提交按鈕點擊(或以任何方式提交表格),信息將被髮送到位於「http://path.to.server-side-script.com/script.php」的服務器端/後端腳本。 。

與JS不同,沒有相同的域名政策可以擔心,而你可以(儘管可能不應該)將信息提交給你的瀏覽器可訪問的任何形式。


響應編輯由OP評論(質疑):

...形式不發送。我正在尋找發送網頁表單的最佳腳本。

你並不需要一個腳本來發送形式,所有你需要做的就是添加了actionmethod屬性的form的開始標記。瀏覽器將自行處理所有提交。但是,您需要一個腳本來處理/處理服務器上的表單。但是這是另外一個問題,如果您提供有關後端/服務器端資源的詳細信息,則只能回答。

0

您需要一個「後端」來完成這項工作。這通常是ASP或PHP。

當您點擊「提交」按鈕時,瀏覽器會將數據發送到後端,代碼將根據提交的數據執行操作。通常它會將這些數據存儲到數據庫中。

你或許應該看看PHP它可能更容易進入和託管費用一般都比較便宜

0

您需要指定表單的動作和目標屬性和方法(POST或GET)。

2

您需要將其發佈到腳本以便可以處理它。

在標籤中,您需要包含一個操作和方法屬性。該操作指定將數據發送到的網頁,並且該方法將如何發送。有兩種方法可以使用POST或GET發送數據,但在您的情況下,POST可能是更好的選擇。

你看起來就像這樣:

myform.php

<form id="mail_form" action="mypost.php" method="POST"> 
     <div> 
      <input type="text" name="subject" id="subject"/> 
     </div> 
     <div> 
      <textarea name="message" id="message"></textarea> 
     </div> 
     <div> 
      <input type="submit" name="submit" id="submit" value="Send"/> 
     </div> 
</form> 

你將不得不像下面這樣來訪問數據:

mypost.php

<?PHP 
    echo $_POST['subject']; 
    echo "\<br\>"; 
    echo $_POST['message']; 
?> 

這隻會打印出用戶輸入的值。您可以選擇執行whate你想用它。

當然,這種方式只適用於PHP。您可以將操作設置爲任何類型的文檔,但需要一些服務器端腳本語言來檢索和操作數據。

詳情請參閱http://www.w3schools.com/php/php_forms.asp

0

正如其他答覆指出的那樣,您需要一個服務後端來處理服務器中的請求。

如果您正在尋找與PHP的工作,我會建議你得到WAMP在您的計算機上運行的Apache/PHP,這裏是一個非常簡單的教程:http://www.w3schools.com/php/php_forms.asp

如果您計劃使用ASP .NET ,你可以從http://www.asp.net獲得軟件,他們的網站上也有很好的教程。

您還可以使用其他服務器端程序,例如Python或Ruby。這都是探索和尋找你喜歡的問題。