PHP鏈接數(shù)據(jù)庫(kù)有幾種方式
創(chuàng)新互聯(lián)專(zhuān)注于靜樂(lè)企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城建設(shè)。靜樂(lè)網(wǎng)站建設(shè)公司,為靜樂(lè)等地區(qū)提供建站服務(wù)。全流程定制制作,專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)
mysqli:
?php?
$servername?=?"localhost";?
$username?=?"username";?
$password?=?"password";?
//?創(chuàng)建連接?
$conn?=?new?mysqli($servername,?$username,?$password);?
//?檢測(cè)連接?
if?($conn-connect_error)?{
die("連接失敗:?"?.?$conn-connect_error);?
}?
echo?"連接成功";?
?
也可以使用PDO進(jìn)行鏈接,前提是你必須在php.ini中開(kāi)啟PDO:
?php
$servername?=?"localhost";
$username?=?"username";
$password?=?"password";
try?{
$conn?=?new?PDO("mysql:host=$servername;dbname=myDB",?$username,?$password);
echo?"連接成功";?
}
catch(PDOException?$e)
{
echo?$e-getMessage();
}
?
建議使用PDO,功能更加強(qiáng)大,兼容各種數(shù)據(jù)庫(kù)
我沒(méi)有去數(shù)你的26~28是哪行,如果你指出來(lái)我可以仔細(xì)看看。
我初步看沒(méi)有發(fā)現(xiàn)錯(cuò)誤語(yǔ)句,你也可以把報(bào)錯(cuò)的信息貼上來(lái),大家?guī)湍憧纯础?/p>
補(bǔ)充:
你的錯(cuò)誤信息進(jìn)一步確認(rèn)了程序沒(méi)有錯(cuò)誤,而是查詢是SQL語(yǔ)句錯(cuò)誤,你在這個(gè)地方添加下面的語(yǔ)句,你看了結(jié)果就會(huì)明白了:
echo $sql;
補(bǔ)充:
下面這行應(yīng)該是你的25行吧:
$result=mysql_db_query( $mysql_database, $sql,$conn );
初學(xué)者寫(xiě)程序應(yīng)該添加調(diào)試信息,建議你把這行修改為:
$result=mysql_db_query( $mysql_database, $sql,$conn ) || die("執(zhí)行SQL錯(cuò)誤,SQL語(yǔ)句是:$sqlbr錯(cuò)誤信息是:".mysql_error());
這樣修改以后,發(fā)生類(lèi)似錯(cuò)誤你就能很容易的看出錯(cuò)誤是什么造成的。
php鏈接mysql必備條件:
已安裝mysql數(shù)據(jù)庫(kù);
檢查php環(huán)境是否已開(kāi)啟mysql擴(kuò)展(一般情況下是開(kāi)啟的);
檢查方法:a.使用phpinfo();函數(shù),看有沒(méi)有mysql項(xiàng);b.打開(kāi)php.ini文件,檢查php_mysql.dll前分號(hào)是否已取掉。
php鏈接代碼如下:
?php
//設(shè)置編碼格式
header("Content-type:text/html;charset=utf-8");
//定義數(shù)據(jù)庫(kù)主機(jī)地址
$host="localhost";
//定義mysql數(shù)據(jù)庫(kù)登錄用戶名
$user="root";
//定義mysql數(shù)據(jù)庫(kù)登錄密碼
$pwd="";
//鏈接數(shù)據(jù)庫(kù)
$conn = mysql_connect($host,$user,$pwd);
//對(duì)連接進(jìn)行判斷
if(!$conn){
die("數(shù)據(jù)庫(kù)連接失??!".mysql_errno());
}else{
echo "數(shù)據(jù)庫(kù)連接成功!";
}
?