四、 向服務器發送數據
現在我們從數據庫讀取數據已經沒有太多困難了。但是怎麼反過來向數據庫發送數據呢?其實這不是PHP的問題。
首選,我們創建一個帶有簡單表格的網頁。
$#@60;html$#@62;
$#@60;body$#@62;
$#@60;form method="post" action="$#@60;?php echo $PATH_INFO?$#@62;"$#@62;
名:$#@60;input type="Text" name="first"$#@62;$#@60;br$#@62;
姓:$#@60;input type="Text" name="last"$#@62;$#@60;br$#@62;
住址:$#@60;input type="Text" name="address"$#@62;$#@60;br$#@62;
職位:$#@60;input type="Text" name="position"$#@62;$#@60;br$#@62;
$#@60;input type="Submit" name="submit" value="輸入信息"$#@62;
$#@60;/form$#@62;
$#@60;/body$#@62;
$#@60;/html$#@62;
同樣要注意$PATH_INFO的用法。就象我在第一課裡講到的,您可以在HTML代碼中的任意位置使用PHP。您也會注意到,表格中的每一個元素都對應著數據庫中的一個字段。這種對應關系並不是必須的,這麼做只是更直觀一些,便於您以後理解這些代碼。
還要注意的是,我在Submit按鈕中加入了name屬性。這樣我在程序中可以試探$submit變量是否存在。於是,當網頁被再次調用時,我就會知道調用頁面時是否已經填寫了表格。
我應該指出,您不一定要把上面的網頁內容寫到PHP程序中,再返過來調用程序本身。您完全可以把顯示表格的網頁和處理表格的程序分開放在兩個網頁、三個網頁甚至更多網頁中,悉聽尊便。放在一個文件中只是可以使內容更加緊湊而已。
那好,我們現在加入一些代碼,來檢查用戶在表格中輸入的內容。我會把用$HTTP_POST_VARS把所有查詢參數變量都顯示出來,這只不過是為了證明PHP確實把所有變量都傳給了程序。這種方法是一個很有用的調試手段。如果您要想看全部的變量,可以用$GLOBALS。
$#@60;html$#@62;
$#@60;body$#@62;
$#@60;?php
if ($submit) {
// 處理表格輸入
while (list($name, $value) = each($HTTP_POST_VARS)) {
echo "$name = $value$#@60;br$#@62;
";
}
} else{
// 顯示表格
?$#@62;
$#@60;form method="post" action="$#@60;?php echo $PATH_INFO?$#@62;"$#@62;
名:$#@60;input type="Text" name="first"$#@62;$#@60;br$#@62;
姓:$#@60;input type="Text" name="last"$#@62;$#@60;br$#@62;
住址:$#@60;input type="Text" name="address"$#@62;$#@60;br$#@62;
職位:$#@60;input type="Text" name="position"$#@62;$#@60;br$#@62;
$#@60;input type="Submit" name="submit" value="輸入信息"$#@62;
$#@60;/form$#@62;
$#@60;?php
} // end if,if結束
?$#@62;
$#@60;/body$#@62;
$#@60;/html$#@62;本新聞共2頁,當前在第1頁 1 2
程序現在運行正常,那我們現在就可以取到表格輸入的內容,並把它們發送給數據庫。
$#@60;html$#@62;
$#@60;body$#@62;
$#@60;?php
if ($submit) {
// 處理表格輸入
$db = mysql_connect("localhost", "root");
mysql_select_db("mydb",$db);
$sql = "INSERT INTO employees (first,last,address,position)
VALUES ($first,$last,$address,$position)";
$result = mysql_query($sql);
echo "Thank you! Information entered.
";
} else{
// 顯示表格內容
?$#@62;
$#@60;form method="post" action="$#@60;?php echo $PATH_INFO?$#@62;"$#@62;
名:$#@60;input type="Text" name="first"$#@62;$#@60;br$#@62;
姓:$#@60;input type="Text" name="last"$#@62;$#@60;br$#@62;
住址:$#@60;input type="Text" name="address"$#@62;$#@60;br$#@62;
職位:$#@60;input type="Text" name="position"$#@62;$#@60;br$#@62;
$#@60;input type="Submit" name="submit" value="輸入信息"$#@62;
$#@60;/form$#@62;
$#@60;?php
} // end if,if結束
?$#@62;
$#@60;/body$#@62;
$#@60;/html$#@62;
您現在已經向數據庫中插入數據了。不過還有很多完善的工作要做。如果用戶沒有填寫某一欄怎麼辦?在需要填入數字的地方填了文字怎麼辦?或者填錯了怎麼辦?別擔心。我們一步一步來。
本新聞共2頁,當前在第2頁 1 2