精PHP與MYSQL數(shù)據(jù)庫連接
[巧克力情人節(jié)]
php與mysql數(shù)據(jù)庫
教學(xué)目標(biāo):
1、了解MySQL數(shù)據(jù)庫绰筛,熟練使用mysql(phpMyadmin)
2羡玛、PHP代碼實現(xiàn)對MySQL數(shù)據(jù)庫的連接和CURD操作
教學(xué)內(nèi)容:
詳細(xì)講解:
一、PHP連接數(shù)據(jù)庫
1薄榛、連接MYSQL服務(wù)器
使用mysql_connect()函數(shù)創(chuàng)建與mysql服務(wù)器連接让歼。
2、選擇數(shù)據(jù)庫
使用mysql_select_db()函數(shù)選擇mysql數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)庫硬猫,并與數(shù)據(jù)庫創(chuàng)建連接。
3坑雅、執(zhí)行sql語句
在選擇的數(shù)據(jù)庫中使用mysql_query()函數(shù)執(zhí)行sql語句衬横。
4、關(guān)閉結(jié)果集
Mysql_free_result();數(shù)據(jù)庫操作完成后需要關(guān)閉結(jié)果集遥诉,以釋放系統(tǒng)資源噪叙。
5、關(guān)閉mysql服務(wù)器
用mysql_close();每使用一次mysql_connect()或mysql_query()函數(shù)苞笨,都會消耗系統(tǒng)資源子眶。在少量用戶訪問web網(wǎng)站時問題還不太,但如果用戶連接超過一定的數(shù)量,就會造成系統(tǒng)性能的下降硅卢,甚至死機(jī)藏杖。為了避免這種現(xiàn)象的發(fā)生,在完成數(shù)據(jù)庫的操作后点寥,應(yīng)使用mysql_close()函數(shù)關(guān)閉與mysql服務(wù)器的連接来吩,以節(jié)省系統(tǒng)資源。
注:php中與數(shù)據(jù)庫的連接是非持久連接戚长,系統(tǒng)會自動回收怠苔,一般不用設(shè)置關(guān)閉。但如果一次性返回的結(jié)果集比較大或網(wǎng)站訪問量比較多迫肖,則最好使用mysql_close()函數(shù)手動進(jìn)行釋放。
二故爵、連接數(shù)據(jù)庫代碼
1帐姻、連接服務(wù)器和選擇數(shù)據(jù)庫
/**
*@authorMissGE
*@since2012-2-16
*@descToolclass
*HandletheMySQLdatabase
*/
$conn=mysql_connect("localhost","root","");
if($conn)
{
echo"數(shù)據(jù)庫連接成功";
}
else
{
Die(數(shù)據(jù)庫連接失敗",mysql_error());//die()函數(shù)表示向用戶輸出引號中的內(nèi)容,程序終止執(zhí)行
}
$select=mysql_select_db("school",$conn);//選擇數(shù)據(jù)庫
/*mysql_query("SET
character_set_connection=utf-8,character_set_results=utf-8,character_set_Client=binary",$conn);*/
Mysql_query("setnamesutf-8");//設(shè)置數(shù)據(jù)庫編碼格式是utf-8
if($select)
echo"選擇數(shù)據(jù)庫成功";
else
echo"選擇數(shù)據(jù)庫失敗";
?>
2剥纷、添加一條數(shù)據(jù)
實例:注冊用戶
3晦鞋、實例:用戶登錄成功
4棺克、修改、刪除一條數(shù)據(jù)
login.php
include("db.php");
?>
注冊/登錄用戶
用戶名:
密碼:
$uName="";
$pwd="";
if($_POST["sub"])
{
$uName=$_POST["userName"];
$pwd=$_POST["pwd"];
$sql="insertinto`users`(`uName`,`uPwd`)values('".$uName."','".$pwd."')";
$query=mysql_query($sql,$conn);
if($query)
echo"注冊成功";
else
echo"注冊失敗";
}
if($_POST["sub_1"])
{
$uName=$_POST["userName"];
$pwd=$_POST["pwd"];
echo$pwd;
$sql="select*fromuserswhereuName='".$uName."'anduPwd='".$pwd."'";
$query=mysql_query($sql,$conn);
$row=mysql_fetch_array($query);
if($row)
echo"";else
echo"登錄失敗";
}
?>
Db.php
$host="localhost";
$root="root";
$rPwd="";$conn=mysql_connect($host,$root,$rPwd);
if(!$conn)
die("連接數(shù)據(jù)庫服務(wù)器失敗".mysql_error());$select=mysql_select_db("school",$conn);mysql_query("setnamesgb2312");
if(!$select)
echo"選擇數(shù)據(jù)庫失敗";
?>
Index_ok.php
echo"相信您的技術(shù)确买,您已登陸成功";echo"返回";?>