標題:
5-1-1 自查詢字串取得資料
[打印本頁]
作者:
小誌
時間:
2011-4-19 09:09
標題:
5-1-1 自查詢字串取得資料
5-1-1 自查詢字串取得資料
<form> 標籤的 method (傳輸方式)屬性值若為「Get」,則代表我們按下『傳送』按鈕後,瀏覽器將會立即主動的將資料傳給伺服器,使用這種方式並不太好!因為當我們按下『傳送』按鈕後,表單中的資料將會附在網址之後傳送到伺服器:
[attach]5507[/attach]
圖5-2 使用Get方法傳送資料。
上圖中,在「http://localhost/php/ch5/go.php」網址後端所串接的資料『?name=xxx&email=xxx&memo=xxxxx』,就是表單以「Get」方式所傳遞的欄位資料,在「?」之後的才是表單內的資料,「?」是網址與表單之間的區隔符號,在「=」左邊的是表單欄位名稱(資料輸出的識別名稱,參數名稱),在「=」右方就是「資料值(參數的資料值)」,表單欄位名稱是PHP程式讀取資料的識別依據,若有多項參數資料自表單中傳出,則各個參數資料間會以「&」符號區隔:
[attach]5508[/attach]
圖5-3 參數字串
作者:
小誌
時間:
2011-4-19 09:10
若是表單以「Get」方式傳遞欄位資料,則我們在接收資料時便得使用「$_GET[“表單欄位名稱”]」的方式來取的參數資料:(go.php)
<?
$name=$_GET["name"];
$email=$_GET["email"];
$memo=$_GET["memo"];
if ($name=="" || $email=="" || $memo=="")
{
echo "姓名或email或留言,任何一欄位不可為空白,請重新輸入";
}
else
{
$memo=nl2br($memo);
?>
<html>
<body>
<table border=1>
<tr>
<td>留言者:<?echo $name?></td><td>Email:<?echo $email?></td>
</tr>
<tr bgcolor=#ffffcc><td colspan=2><?echo $memo?></td>
</tr>
</table>
</body>
</html>
<?
}
複製代碼
作者:
小誌
時間:
2011-4-19 09:11
若,我們在接收資料時使用「$_GET[“表單欄位名稱”]」的方式來取得參數資料,那資料的傳遞就不一定要透過表單了,我們亦可以在瀏覽器的網址中直接輸入資料,不過,參數名稱是必須相同的,而參數資料值則可由我們隨意變換:
[attach]5509[/attach]
圖5-4 在瀏覽器的網址中直接輸入資料。
提示!!
在PHP4.2.0版本之前,外部變數的讀取只要在變數名稱前方加上 $ 符號,即可取用變數的值;在PHP4.2.0版本之後,為了系統安全的理由,在 php.ini 裡頭的 register_globals項目被預設為 Off,所以外部變數的讀取必須使用 『$_xyz[“變數名稱”]』的方式才行,xyz 所指的包括 GET、POST、REQUEST…等。
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)