PHP 4.0 講義 PHP介紹 1 2 3 4 5 6 7 8 9 A B C D
PHP 輸入 - 表單
說明:利用表單的輸入功能加上前幾章的變數觀念, 讓使用者的輸入, 藉由表單這個界面, 存入來 PHP 的變數中
表單依功能可分成以下
命令鈕 submit
說明:主要功能在將資料傳送到目的地
用法:
<form action="submit.php" method="post">
<input type ="submit" value="送出">
</form>或
<form action="p2.php" method="post">
<input type ="submit" name="answer" value="YES">
</form>說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : submit 為命令鈕
name : 儲存資料的變數名稱 (沒有$符號)
value : 命令鈕上的文字
例:
檔名為 p1.php 你是男生?
<form action="p2.php" method="post">
<input type ="submit" name="answer" value="YES">
<input type ="submit" name="answer" value="NO">
</form>
檔名為 p2.php
<?php
$answer = $_POST['answer'];
echo "你的回答是 $answer";
?>
文字方塊 text
說明:主要功能在輸入資料
用法:
<form action="p2.php" method="post">
你的姓名 :
<input type ="text" name="name" value="無名氏">
<input type ="submit" value="送出">
</form>
說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : text 文字方塊
name : 儲存資料的變數名稱 (沒有$符號)
value : 文字方塊內的預設值
例:
檔名為 p1.php
<form action="p2.php" method="post">
你的姓名 :
<input type ="text" name="name" value="無名氏">
<input type ="submit" value="送出">
</form>
檔名為 p2.php
<?php
$name = $_POST['name'];
echo "你的姓名是 $name";
?>
文字方塊 password
說明:同文字方塊 text , 不同的在於使用者輸入資料時, 回應符號為 * ( 通常用來輸入密碼 )
用法:
<form action="p2.php" method="post">
你的密碼 :
<input type ="password" name="pd">
<input type ="submit" value="送出">
</form>說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : password *字回應的文字方塊
name : 儲存資料的變數名稱 (沒有$符號)
value : 文字方塊內的預設值
例:
檔名為 p1.php
<form action="p2.php" method="post">
你的密碼 :
<input type ="password" name="pd">
<input type ="submit" value="送出">
</form>
檔名為 p2.php
<?php
$pd = $_POST['pd'];
echo "你的密碼是 $pd";
?>
命令鈕 reset
說明:主要功能在輸入錯誤時, 清除全部資料
用法:
<form action="p2.php" method="post">
你的姓名 :
<input type ="text" name="name" value="無名氏">
<input type ="reset" value="清除, 重寫">
<input type ="submit" value="送出">
</form>說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : reset 為清除用的命令鈕
value : 命令鈕上的文字
例:
檔名為 p1.php
<form action="p2.php" method="post">
你的姓名 :
<input type ="text" name="name" >
<input type ="reset" value="清除, 重寫">
<input type ="submit" value="送出">
</form>
檔名為 p2.php
<?php
$name = $_POST['name'];
echo "你的姓名是 $name";
?>
核取方塊 checkbox
說明:主要功能在 複選選項
用法:
<form action="p2.php" method="post">
語言能力 :
<input type ="checkbox" name="chinese" checked>中文
<input type ="checkbox" name="english">英文
<input type ="checkbox" name="taiwan">台語
<input type ="submit" value="送出">
</form>
說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : checkbox 複選選項
name : 儲存資料的變數名稱 (沒有$符號)
若有勾選則變數值為 on, 否則為 無
checked : 預設為勾選的
例:
檔名為 p1.php <form action="p2.php" method="post">
語言能力 :
<input type ="checkbox" name="chinese" checked>中文
<input type ="checkbox" name="english">英文
<input type ="checkbox" name="taiwan">台語
<input type ="submit" value="送出">
</form>
檔名為 p2.php
<?php
$chinese = $_POST['chinese'];
$english = $_POST['english'];
$taiwan = $_POST['taiwan'];
echo "你的語言能力有 ";
if($chinese =="on") echo "中文, ";
if($english =="on") echo "英文, ";
if($taiwan =="on") echo "台語, ";
?>
選取按鈕 radio
說明:主要功能在 單選選項
用法:
<form action="p2.php" method="post">
你的血型 :
<input type ="radio" name="type" value="A" checked>A
<input type ="radio" name="type" value="B">B
<input type ="radio" name="type" value="AB">AB
<input type ="submit" value="送出">
</form>
說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : radio 複選選項
name : 儲存資料的變數名稱 (沒有$符號)
value : 若有圈選則變數值為該值
checked : 預設為圈選的
例:
檔名為 p1.php
<form action="p2.php" method="post">
你的血型 :
<input type ="radio" name="type" value="A" checked>A
<input type ="radio" name="type" value="B">B
<input type ="radio" name="type" value="AB">AB
<input type ="submit" value="送出">
</form>
檔名為 p2.php
<?php
$type = $_POST['type'];
echo "你的血型是 $type ";
?>
文字框 textarea
說明:主要功能在輸入多行的文字 ( 例如: 留言板 )
用法:
<form action="textarea.php" method="post">
<textarea name="a" rows="5" cols="10">
三民主義
五權憲法
........
</textarea>
<input type ="submit" value="發表">
</form>
說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )name : 儲存資料的變數名稱 (沒有$符號)
rows : 列數
cols : 欄數
<textarea> 和 </textarea> 中間擺的是 預設的文字尚有:
readonly = "true" 唯讀 (不讓使用者修改)
例:
檔名為 textarea.php <?php
$book = $_POST['book']; // php 4.1 以後要求
echo $book,"<br>";
?>
<form action="textarea.php" method="post">
<textarea name="book" rows="5" cols="10">
三民主義
五權憲法
........
</textarea>
<input type ="submit" value="發表">
</form>
列表盒 select
說明:做表列選取的功能
用法:
<form action="select.php" method="post">
請輸入你的學制 :
<select name="a">
<option>1.二技
<option selected>2.二技在職
<option>3.二技進修
</select><br>
<input type ="submit" value="發表">
</form>
說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )name : 儲存資料的變數名稱 (沒有$符號)
<select> 和 </select> 中間擺的選項
<option> 後接選項值 (使用者若選此項,
變數值為這個選項的值)
<option select> 為預設的選項多重選擇的寫法: <form action="select.php" method="post">
請輸入你的喜好(請用 ctrl + 滑鼠左鍵 來多重選取) :
<select multiple name="a [] ">
<option value="1">1.釣魚
<option value="2">2.游泳
<option value="3">3.潛水
</select><br>
<input type ="submit" value="發表">
</form>
例:
檔名為 select.php <?php
$a = $_POST['a']; // php 4.1 以後要求
echo $a,"<br>";
?>
<form action="select.php" method="post">
請輸入你的學制 :
<select name="a">
<option>1.二技
<option selected>2.二技在職
<option>3.二技進修
<option>4.四技
<option>5.二專
<option>6.高工
</select><br>
<input type ="submit" value="發表">
</form>
隱藏欄位 hidden
說明:在表單中並不會看到這個物件, 通常用在表單中暗藏資料送出, 也常用於多個表單中的變數傳遞
用法:
在表單中暗藏資料送出: <form action="t1.php" method="post">
請輸入你的學號 :
<input type ="text" name="stno" value="a881011">
<input type ="hidden" name="varname" value="測試">
<input type ="submit" value="送出">
</form>
說明 : action : 資料傳送的目的地
method : 傳送資料的方法 (post, get )type : text 文字方塊
name : 儲存資料的變數名稱 (沒有$符號)
value : 文字方塊內的預設值用於 多個表單中的變數傳遞: 檔名為 p1.php
<form action="p2.php" method="post">
請輸入你的學號 :
<input type ="text" name="stno" value="a881011">
<input type ="submit" value="送出">
</form>檔名為 p2.php
<form action="p3.php" method="post">
請輸入你的姓名 :
<input type ="text" name="stname" value="無名氏">
<input type ="hidden" name="stno" value="<?php echo $_POST['stno'] ?>">
<input type ="submit" value="送出">
</form>檔名為 p3.php
<?php
$stname = $_POST['stname']; // php 4.1 以後要求
$stno = $_POST['stno']; // php 4.1 以後要求
echo "你的姓名 : ",$stname,"<br>";
echo "你的學號 : ",$stno,"<br>";
?>
例:
(略)
練習 : 攝氏轉換成華氏 (使用者輸入攝氏, 電腦回答華氏) 解答
9
華氏=32 + ---- * 攝氏
5
例:
練習 : 電腦隨機由1~42 挑出8個號碼
檔名為 text.php <?php
$run_time = $_POST['run_time']; // php 4.1 以後要求
echo "電腦選號為: ";
function make_seed()
{
list($usec,$sec)=explode(' ',microtime());
return (float) $sec+((float)$usec * 100000);
}
srand(make_seed()); //依時間取亂數, 以保証每次開頭都不同
for($i=0;$i<$run_time;$i++)
{
$a = rand(1,42);
echo " ",$a;
}
?>
<form action="text.php" method="post">
你要抓幾個號碼 :
<input type ="text" name="run_time" value="8">
<input type ="submit" value="再試一次">
</form>