日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

php mysql while循环,PHP_MySQL教程-第二天while循环与数据库操作第2/2页

發布時間:2025/3/15 数据库 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php mysql while循环,PHP_MySQL教程-第二天while循环与数据库操作第2/2页 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

同樣要注意$PATH_INFO的用法。就象我在第一課里講到的,您可以在HTML代碼中的任意位置使用PHP。您也會注意到,表格中的每一個元素都對應著數據庫中的一個字段。這種對應關系并不是必須的,這么做只是更直觀一些,便于您以后理解這些代碼。

還要注意的是,我在Submit按鈕中加入了name屬性。這樣我在程序中可以試探$submit變量是否存在。于是,當網頁被再次調用時,我就會知道調用頁面時是否已經填寫了表格。

我應該指出,您不一定要把上面的網頁內容寫到PHP程序中,再返過來調用程序本身。您完全可以把顯示表格的網頁和處理表格的程序分開放在兩個網頁、三個網頁甚至更多網頁中,悉聽尊便。放在一個文件中只是可以使內容更加緊湊而已。

那好,我們現在加入一些代碼,來檢查用戶在表格中輸入的內容。我會把用$HTTP_POST_VARS把所有查詢參數變量都顯示出來,這只不過是為了證明PHP確實把所有變量都傳給了程序。這種方法是一個很有用的調試手段。如果您要想看全部的變量,可以用$GLOBALS。

if?($submit)?{

//?處理表格輸入

while?(list($name,?$value)?=?each($HTTP_POST_VARS))?{

echo?"$name?=?$value
n";

}

}?else{

//?顯示表格

?>

">

名:
姓:
住址:
職位:

}?//?end?if,if結束

?>

程序現在運行正常,那我們現在就可以取到表格輸入的內容,并把它們發送給數據庫。

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.n";

}?else{

//?顯示表格內容

?>

">

名:
??姓:
住址:
??職位:

}?//?end?if,if結束

?>

您現在已經向數據庫中插入數據了。不過還有很多完善的工作要做。如果用戶沒有填寫某一欄怎么辦?在需要填入數字的地方填了文字怎么辦?或者填錯了怎么辦?

別擔心。我們一步一步來。

第五頁?修改數據

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

我們已經學習了如何把數據插入到數據庫中。現在我們來學習如何修改數據庫中已有的記錄。數據的編輯包括兩部分:數據顯示和通過表格輸入把數據返回給數據庫,這兩部分我們前面都已經講到了。然而,數據編輯還是有一點點不同,我們必須先在表格中顯示出相關的數據。

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

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

mysql_select_db("mydb",$db);

if?($id)?{

//?查詢數據庫

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

$result?=?mysql_query($sql);

$myrow?=?mysql_fetch_array($result);

?>

">

">

名:

$myrow["first"]??>">
姓:

$myrow["last"]??>">
住址:

$myrow["address"]??>">
職位:

$myrow["position"]??>">

}?else?{

//?顯示員工列表

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

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

printf("%s?%s
n",?$PATH_INFO,

$myrow["id"],?$myrow["first"],?$myrow["last"]);

}

}

?>

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

$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?"謝謝!數據更改完成n";

}?else?{

//?查詢數據庫

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

$result?=?mysql_query($sql);

$myrow?=?mysql_fetch_array($result);

?>

">

">

名:

echo?$myrow["first"]??>">
????姓:

$myrow["last"]??>">
????住址:

$myrow["address"]??>">
????職位:

$myrow["position"]??>">

}

}?else?{

//?顯示員工列表

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

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

printf("%s?%s
n",?$PATH_INFO,

$myrow["id"],?$myrow["first"],?$myrow["last"]);

}

}

?>

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

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

第六頁?完整的程序

在本課結束前,我們要把所有東西加入到一個程序中,使它具有增加、編輯修改、刪除記錄的功能。這是前面所有內容的一個延伸,也可以作為極好的復習方法。看看下面的程序。

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

mysql_select_db("mydb",$db);

if?($submit)?{

//?如果沒有ID,則我們是在增加記錄,否則我們是在修改記錄

if?($id)?{

$sql?=?"UPDATE?employees?SET?first='$first',last='$last',

address='$address',position='$position'?WHERE?id=$id";

}?else?{

$sql?=?"INSERT?INTO?employees?(first,last,address,position)

VALUES?('$first','$last','$address','$position')";

}

//?向數據庫發出SQL命令

$result?=?mysql_query($sql);

echo?"記錄修改成功!

";

}?elseif?($delete)?{

//?刪除一條記錄

$sql?=?"DELETE?FROM?employees?WHERE?id=$id";

$result?=?mysql_query($sql);

echo?"記錄刪除成功!

";

}?else?{

//?如果我們還沒有按submit按鈕,那么執行下面這部分程序

if?(!$id)?{

//?如果不是修改狀態,則顯示員工列表

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

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

printf("%s?%s?n",

$PATH_INFO,?$myrow["id"],?$myrow["first"],?$myrow["last"]);

printf("(DELETE)<

br>",?$PATH_INFO,?$myrow["id"]);

}

}

?>

">ADD?A?RECORD

">

if?($id)?{

//?我們是在編輯修改狀態,因些選擇一條記錄

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

$result?=?mysql_query($sql);

$myrow?=?mysql_fetch_array($result);

$id?=?$myrow["id"];

$first?=?$myrow["first"];

$last?=?$myrow["last"];

$address?=?$myrow["address"];

$position?=?$myrow["position"];

//?顯示id,供用戶編輯修改

?>

">

}

?>

名:">
姓:">
住址:">
職位:">

}

?>

這段程序看起來很復雜,但實際上并不難。程序主要有三個部分。第一個if()語句檢查我們是否已經按下了那個“輸入信息”的數據提交按鈕。如果是,程序再檢查$id是否存在。如果不存在,那我們就是在增加記錄狀態,否則,我們是在修改記錄狀態。

接下來我們檢查變量$delete是否存在。如果存在,我們是要刪除記錄。注意,第一個if()語句檢查的是用POST方法發送來的變量,而這一次我們檢查的是GET方法中傳遞過來的變量。

最后,程序默認的動作是顯示員工列表和表格。同樣,我們要檢查變量$id是否存在。如果存在,我們就根據它的值檢索出相應的記錄顯示出來。否則,我們會顯示一個空的表格。

現在,我們已經把所學的東西全部都放在一個程序里頭了。我們用到了while()循環,用到了if()語句,并且執行了全部的SQL基本操作?-?SELECT、INSERT、UPDATE以及DELETE。另外,我們也知道如何在不同的網頁之間通過URL和表格輸入來互相傳遞信息。

在第三課里,我們要學習如何為網頁增加智能化處理能力。

總結

以上是生活随笔為你收集整理的php mysql while循环,PHP_MySQL教程-第二天while循环与数据库操作第2/2页的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。