明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

PHP/MySQL3日通-第二天(3)

[摘要]五、修改數(shù)據(jù)   在個(gè)教程中,我都把要執(zhí)行的SQL語句放到一個(gè)變量($sql)中,然后才用mysql_query()來執(zhí)行數(shù)據(jù)庫查詢。在調(diào)試時(shí)這是很有用的。如果程序出了什么問題,您隨時(shí)可以把SQL語句的內(nèi)容顯示出來,檢查其中的語法錯(cuò)誤。   我們已經(jīng)學(xué)習(xí)了如何把數(shù)據(jù)插入到數(shù)據(jù)庫中,F(xiàn)在我們來學(xué)習(xí)如...
       五、修改數(shù)據(jù)

  在個(gè)教程中,我都把要執(zhí)行的SQL語句放到一個(gè)變量($sql)中,然后才用mysql_query()來執(zhí)行數(shù)據(jù)庫查詢。在調(diào)試時(shí)這是很有用的。如果程序出了什么問題,您隨時(shí)可以把SQL語句的內(nèi)容顯示出來,檢查其中的語法錯(cuò)誤。

  我們已經(jīng)學(xué)習(xí)了如何把數(shù)據(jù)插入到數(shù)據(jù)庫中,F(xiàn)在我們來學(xué)習(xí)如何修改數(shù)據(jù)庫中已有的記錄。數(shù)據(jù)的編輯包括兩部分:數(shù)據(jù)顯示和通過表格輸入把數(shù)據(jù)返回給數(shù)據(jù)庫,這兩部分我們前面都已經(jīng)講到了。然而,數(shù)據(jù)編輯還是有一點(diǎn)點(diǎn)不同,我們必須先在表格中顯示出相關(guān)的數(shù)據(jù)。

  首先,我們回過頭再看看第一課的程序代碼,在網(wǎng)頁中顯示員工姓名。但是這次,我們要把數(shù)據(jù)顯示在表格中。程序看起來象下面這樣:

 

  我們剛才是把字段內(nèi)容寫入到相應(yīng)表格元素中的value屬性里,這是相應(yīng)簡單的。我們再往前進(jìn)一步,使程序可以把用戶修改過的內(nèi)容寫回?cái)?shù)據(jù)庫去。同樣,我們通過Submit按鈕來判斷是否處理表格輸入內(nèi)容。還要注意,我們用的SQL語句稍稍有些不同。


[page_break]
 $#@60;html$#@62;

$#@60;body$#@62;

$#@60;?php

$db = mysql_connect("localhost", "root");

mysql_select_db("mydb",$db);

if ($id) {

if ($submit) {

$sql = "UPDATE employees SET first=$first,last=$last,
address=$address,position=$position WHERE id=$id";

$result = mysql_query($sql);


echo "謝謝!數(shù)據(jù)更改完成\n";

} else {


// 查詢數(shù)據(jù)庫

$sql = "SELECT * FROM employees WHERE id=$id";

$result = mysql_query($sql);

$myrow = mysql_fetch_array($result);

?$#@62;

$#@60;form method="post" action="$#@60;?php echo $PATH_INFO?$#@62;"$#@62;

$#@60;input type=hidden name="id" value="$#@60;?php echo $myrow["id"] ?$#@62;"$#@62;


名:$#@60;input type="Text" name="first" value="$#@60;?php
echo $myrow["first"] ?$#@62;"$#@62;$#@60;br$#@62;


姓:$#@60;input type="Text" name="last" value="$#@60;?php echo
$myrow["last"] ?$#@62;"$#@62;$#@60;br$#@62;


住址:$#@60;input type="Text" name="address" value="$#@60;?php echo
$myrow["address"] ?$#@62;"$#@62;$#@60;br$#@62;


職位:$#@60;input type="Text" name="position" value="$#@60;?php echo
$myrow["position"] ?$#@62;"$#@62;$#@60;br$#@62;


$#@60;input type="Submit" name="submit" value="輸入信息"$#@62;

$#@60;/form$#@62;

$#@60;?php

}

} else {


// 顯示員工列表

$result = mysql_query("SELECT * FROM employees",$db);

while ($myrow = mysql_fetch_array($result)) {

printf("$#@60;a href=\"%s?id=%s\"$#@62;%s %s$#@60;/a$#@62;$#@60;br$#@62;\n", $PATH_INFO,
$myrow["id"], $myrow["first"], $myrow["last"]);

}

}

?$#@62;

$#@60;/body$#@62;

$#@60;/html$#@62;

  就是這樣。在這個(gè)程序中已經(jīng)包含了我們學(xué)過所大多數(shù)特性。您也已經(jīng)看到,我們在一個(gè)if()條件判別語句中又加了一個(gè)if()語句,來檢查多重條件。

  下面,我們要把所有東西全都加在一起,寫出一個(gè)很好的程序來。