3. PHP與HTML表單
一、基礎表單的HTML語法
PHP的變數很大一部份來自於表單,因此我們來看一下表單的寫法。
<form action="接收程式.php" method="傳送方式">表單</form>
- action屬性:用來指定表單內容,要送到哪個程式來執行。
- method屬性:指定表單內容的傳送方法,可以是POST(建議)或GET(預設)
- 如果希望表單可以上傳,必須加入enctype="multipart/form-data"
二、最基礎的input表單元件的HTML語法
<input type="格式" name="名稱" size="大小" value="預設值">
- 其中的name最重要!一定要有!因為name送出後,會變成PHP的變數名稱。例如表單有個:<input type="text" name="tel">,表單送出後:
- (1) 如果表單是用method="post",那麼PHP會收到 $_POST['tel'] 的變數
- (2) 如果表單是用method="get",那麼PHP會收到 $_GET['tel'] 的變數
三、常用的表單元件HTML語法及屬性
- 文字框:<input type="text" name="名稱" value="預設值" size="大小">
- 隱藏框:<input type="hidden" name="名稱" value="預設值">
- 密碼框:<input type="password" name="名稱" size="大小" value="預設值">
- 上傳框:<input type="file" name="名稱" size="大小">
- 送出鈕:<input type="submit" value="按鈕文字">
- 單選框(圓形鈕):<input type="radio" name="名稱" value="值1">選項文字1
- a.單選框通常同時會有好幾個選項,一組選項就要一組<input>
- b.而且name都要一樣才行!
- c.若要預設選取,要加上 checked="checked"
- 複選框(方形鈕):<input type="checkbox" name="名稱[]" value="值1">選項文字1
- a.複選框通常同時會有好幾個選項,一組選項就要一組<input>
- b.而且name都要一樣才行!而且因為是複選,所以要加上[],如此會送出陣列。
- c.若要預設選取,要加上 checked="checked"
- 下拉選單:<select name="名稱" size=1>選項</select>
- (1) 選項:<option value="值">選項文字</option>
- a.一組選項,就是一組<option>
- b.若要預設選取:要在<option>中加入 selected="selected"
- (2) 若希望下拉選單可以複選,除了 name要加上[]外,還要加上multiple 屬性。
- 大量文字框:<textarea name="名稱" cols="欄寬" rows="列高">預設值</textarea>
四、表格HTML語法及屬性
- <table><tr><td>儲存格1</td><td>儲存格2</td></tr></table>
- <tr></tr> 是一列,裡面要放儲存格,一組<td></td>就是一格。
五、PHP的算術運算元
- 「加、減、乘、除」分別是「+」、「-」、「*」、「/」
- 單位轉換範例:1坪=3.30579平方公尺
六、幾個實用的函數
- PHP函數(function)是非常實用的東西,每個函數都有一個固定用途,在此介紹兩個接收變數時,會用到的函數:
- implode("串接符號",$陣列)→會把陣列串接起來成一個大字串。
- nl2br($大量文字)→會把換行符號(\n)轉換成網頁換行語法<br>。
七、來設計一個榮譽榜的發布界面吧!
- 至少有以下欄位:得獎者名稱(文字框)、得獎日期(文字框)、事由(文字框)、內容(大量文字框)、校內校外(下拉選單)、是否發布(單選)