第一張表單,
希望你看過這篇文章後能稍微理解,
表單是一種可以提供網頁使用者輸入各類資料的地方,
寫網頁時你把要傳送資料的位置在 action= 之後寫清楚了,
當使用者把表單裡的資料填寫完畢並且送出,
瀏覽器就會根據你設定的 action 傳送位置,
把這些資料送到那個位置去處理。
怎樣處理表單資料是我們學習網頁設計的另一個重點。
處理表單資料的程式有許多種語言,
除了 php 之外,
我還知道有 perl,
不同的語言各有其特色,
但我別的都不會,
只會一丁點兒 php 語言,
所以本篇文章我們就先來學習 php 的基本指令。
我最初接觸 php,
所學習的第一個指令就是 echo,
如今我也用這種方式跟各位分享,
反正鴿子也是這樣教的,
如果誤人子弟你怪鴿子吧!
echo 只是單純的把一個信息印出來,
它可以印出字串,
例如:
echo "學習的故鄉";
# 字串要用雙引號或者單引號包著
它也可以把已經定義好的變數印出來,
例如:
echo $friend;
# $friend 是變數名稱
注意,
(;) 分號代表一個 php 的敘述結束,
一行 php 可以寫兩個敘述,
例如:
$friend = "學習的故鄉";
echo $friend;
# 先將字串設定給 $friend 這個變數,
然後再用 echo 把這個變數印出來
上面代碼內容只有一行,
但卻有兩個敘述,
每個敘述都要用分號來表示該敘述的結束,
其中第一個敘述就是定義變數的程序。
注意上面的例子第二行只是個註解,
目的只是提醒程式設計者此行敘述的用意為何。
將來你要寫一個特大型的程式,
程式內容可能多達數十萬行甚至更多更多,
如果不註明某段敘述的用意為何,
你在重新閱讀你自己寫的程式時一定要暈倒的,
因為:
「事情那麼多,
沒有做任何紀錄,
誰知道你到底要幹嘛?」
php 只要遇到 (#) 井字號跟 (//) 兩個斜線符號,
這兩種符號之後的那行內容都會被當作註解而不做任何執行動作。
php 定義變數的時候要注意,
凡是變數名稱,
都要在前面加上金錢符號 ($) ,
因此下面這兩個敘述是不一樣的:
echo friend;
echo $friend;
# 第二個才是正確地印出 $friend 變數的指令
有關 php 變數設定與應用,
我們會在專門的篇幅討論。
接下來想告訴各位「幻境之家」是怎樣處理表單資料的?
星期六早上,
鴿子三請四催的終於還是被我盼了來,
我請他好好吃一頓我阿嬤做的招牌年糕巴結巴結,
正好有一位小朋友用MSN寄來一個檔案,
檔名叫做 good.php,
這正是幻境之家的原始碼,
於是鴿子便示範他平時是怎樣用網路跟孩子們講解程式寫作,
後來索性便要我將 good.php 這個檔案拿來做為本篇文章的範例。
請注意下面這個檔案內容,
整個檔案大部分都是 html 標籤,
第四行她在 <title> 標籤中加入了 php 程序,
注意:php 的程式碼都會被放在
小於問號 (<?)
和問號大於 (?>)
這對標籤之間。
這個小朋友利用這種方式展現網頁標題,
實在很有創意。
這個城市的網頁標題是:
害!<?= $friend;?>!歡迎光臨幻境之家!
很厲害吧!
其實它只是想利用 php 把 $friend 印出來罷了,
「(=) 等於」
在這裡是 echo 的意思。
我說她厲害,
那是因為她懂得如何使用 html 來與 php 相互結合,
或者說「互相包容」。
如果這一行全都用 php 來寫的話,
那就要這樣寫了:
<?
echo "害!". $friend ."!歡迎光臨幻境之家!";
?>
如何呢?
你覺得這兩種寫法哪一種比較好?
第二種寫起來是否覺得比較複雜?
其實在不同的情況下,
都要會用不同的表達方式來描述同一件事情,
我們以後要學習使用這些概念。
至於 echo $friend,
螢幕上會印出什麼呢?
$friend 是一個變數名稱,
echo 當然就把 $friend 裡面裝的東西給印出來嘍,
還記得
「第一張表單」
的「幻境入門」嗎?
這張表單 action 正是把資料傳向這個 good.php,
該表單文字輸入框的標籤我們是這樣寫的:
<input type="text" name="friend" value="" size="20">
注意
「name=friend」,
意思是把輸入文字框的內容指派給 friend 這個變數,
因此在 good.php 的 $friend 裡面,
裝著的就是網頁使用者在文字框所輸入的內容了,
套用許多網路上找到的教學文件所說的:
「$friend 的預設值就是文字框�堛漱漁e。」
此外,
從第八行到第十二行,
你該不難發現它們也全都是 php 代碼。
因為它們也被包在一對 <? 和 ?> 標籤之間。
有了上面說的概念,
就不難理解第 11 行的敘述了,
可不是嗎?
那也是一個 echo 敘述,
這裡的 echo 指令就不能用等於符來代替了喔!
因為php 標籤�媕Y只有一個輸出敘述的時候,
才可以用等於符來代替 echo。
所謂輸出敘述是指把資料輸出到螢幕上的指令,
例如 echo 是把字串或者變數印出到螢幕上;
這段php程式碼裡有兩個 echo 指令,
所以不能用等於符來代替。
good.php 代碼內容:
回 · 大家來學php 這一篇文章封面