十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
php鏈接mysql必備條件:
成都創(chuàng)新互聯(lián)長(zhǎng)期為上千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為麻陽(yáng)企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,麻陽(yáng)網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
已安裝mysql數(shù)據(jù)庫(kù);
檢查php環(huán)境是否已開啟mysql擴(kuò)展(一般情況下是開啟的);
檢查方法:a.使用phpinfo();函數(shù),看有沒(méi)有mysql項(xiàng);b.打開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ù)連接成功!";
}
?
數(shù)據(jù)庫(kù)有很多種類:mysql,oracle,mssql,db2等等。PHP操作數(shù)據(jù)庫(kù)的時(shí)候,要保證該類型數(shù)據(jù)庫(kù)的擴(kuò)展已開啟。這里連接的數(shù)據(jù)庫(kù)以mysql為例:?php
//數(shù)據(jù)庫(kù)服務(wù)器地址
$host="localhost";
//連接數(shù)據(jù)庫(kù)用戶名
$uname="root";
//連接數(shù)據(jù)庫(kù)密碼
$upass="";
//連接數(shù)據(jù)庫(kù)
$conn=mysql_connect($host, $uname,$upass);
//判斷連接
if(!$conn){
die("連接數(shù)據(jù)庫(kù)失??!").mysql_errno();
}
//連接成功,其他操作省略
?
在php中如果要連接遠(yuǎn)程數(shù)據(jù)庫(kù)連接方法很簡(jiǎn)單,只要把本地連接localhost或127.0.0.1改成指定遠(yuǎn)程服務(wù)器一IP地址或者直接域名即可。
語(yǔ)法
mysql_connect(servername,username,password);
例子
在下面的例子中,我們?cè)谝粋€(gè)變量中?($con)?存放了在腳本中供稍后使用的連接。如果連接失敗,將執(zhí)行?"die"?部分:
代碼如下:
?php
$con?=?mysql_connect("localhost","peter","abc123");
if?(!$con)
{
die('Could?not?connect:?'?.?mysql_error());
}
//?some?code
?
上面是連接本地?cái)?shù)據(jù)庫(kù),下面把localhost改成遠(yuǎn)程IP即可了
實(shí)例 代碼如下:
$conn=mysql_connect('','root','123456888');
if(!$conn)?echo?"失敗!";
else?echo?"成功!";
//?從表中提取信息的sql語(yǔ)句
$sql="SELECT?*?FROM?user?where?userName='$user_name'";
//?執(zhí)行sql查詢
$result=mysql_db_query('info',?$sql,?$conn);
//?獲取查詢結(jié)果
$row=mysql_fetch_row($result);
mysql_close();
PHP連接數(shù)據(jù)庫(kù)之PHP連接MYSQL數(shù)據(jù)庫(kù)代碼
?php? ? $mysql_server_name= localhost ;? //改成自己的mysql數(shù)據(jù)庫(kù)服務(wù)器 ? $mysql_username= root ;? //改成自己的mysql數(shù)據(jù)庫(kù)用戶名 ? $mysql_password= ;? //改成自己的mysql數(shù)據(jù)庫(kù)密碼 ? $mysql_database= mycounter ; ?//改成自己的mysql數(shù)據(jù)庫(kù)名 ? $conn=mysql_connect($mysql_server_name $mysql_username $mysql_password $mysql_database);? ? $sql= CREATE?DATABASE?mycounter? DEFAULT?CHARACTER?SET?gbk?COLLATE?gbk_chinese_ci;? ? ;? ? mysql_query($sql);? ? $sql= CREATE?TABLE?`counter`? (`id`?INT( )?UNSIGNED?NOT?NULL? AUTO_INCREMENT? `count`?INT( )? UNSIGNED?NOT?NULL?DEFAULT? PRIMARY?KEY? (?`id`?)?)?TYPE?=?innodb; ;? ? mysql_select_db($mysql_database $conn);? ? $result=mysql_query($sql);? ? //echo?$sql;? ? mysql_close($conn);? ? echo?"Hello!數(shù)據(jù)庫(kù)mycounter已經(jīng)成功建立!";? ? ?
PHP連接數(shù)據(jù)庫(kù)之PHP連接ACCESS數(shù)據(jù)庫(kù)代碼方法
? ? $conn?=?new?("ADODB Connection");? ? $connstr?=?"DRIVER={Microsoft?Access?Driver?(* mdb)};?DBQ=" ?realpath("data/db mdb");? ? $conn Open($connstr);? ? $rs?=?new?("ADODB RecordSet");? ? $rs Open("select?*?from?szd_t" $conn );? ? while(!?$rs eof)?{? ? $f?=?$rs Fields( );? ? echo?$f value;? ? $rs MoveNext();? ? }? ? ?
PHP連接數(shù)據(jù)庫(kù)之PHP連接MS SQL數(shù)據(jù)庫(kù)代碼方法
安裝SQL服務(wù)器并添加PHP的MSSQL擴(kuò)展
使用以下代碼連接并測(cè)試
?php? ? $myServer?=?localhost;?//主機(jī) ? $myUser?=?sa;?//用戶名 ? $myPass?=?password;?//密碼 ? $myDB?=?Northwind;?//MSSQL庫(kù)名 ? $s?=?@mssql_connect($myServer ?$myUser ?$myPass)? ? or?die(Couldnt?connect?to?SQL?Server?on?$myServer);? ? $d?=?@mssql_select_db($myDB ?$s)? ? or?die(Couldnt?open?database?$myDB);? ? $query?=?SELECT?TitleOfCourtesy+?+FirstName+?+LastName?AS?Employee?;? ? $query? =?FROM?Employees?;? ? $query? =?WHERECountry=USA?AND?Left(HomePhone ? )?=?( );? ? $result?=?mssql_query($query);? ? $numRows?=?mssql_num_rows($result);? ? echo? h ? ?$numRows? ?Row? ?($numRows?==? ???:?s)? ?Returned?/ h ;? ? while($row?=?mssql_fetch_array($result))? ? {? ? echo? li? ?$row[Employee]? ? /li;? ? }? ? ?
PHP連接數(shù)據(jù)庫(kù)之PHP連接Oracle數(shù)據(jù)庫(kù)
PHP提供了兩套函數(shù)與Oracle連接 分別是ORA_和OCI函數(shù) 其中ORA_函數(shù)略顯陳舊 OCI函數(shù)更新?lián)f(shuō)更好一些 兩者的使用語(yǔ)法幾乎相差無(wú)幾 你的PHP安裝選項(xiàng)應(yīng)該可以支持兩者的使用
?? if?($conn=Ora_Logon("user@TNSNAME" "password"))? ? {?echo?"SUCCESS?!?Connected?to?databasen";? ? }else? ? {echo?"Failed?: (?Could?not?connect?to?databasen";}? ? Ora_Logoff($conn);? ? phpinfo();? ? ?? ? lishixinzhi/Article/program/PHP/201405/30761
以系統(tǒng)為windowns為例,
1、先PHP.INI中的oracle擴(kuò)展也開啟了
PHP下php.ini(注意,有時(shí)是在windows目錄)修改下下
其中的
extension=php_oci8.dll 去掉前面的“;”號(hào)
extension=php_oracle.dll 去掉前面的“;”號(hào)
把php_oci8.dll 、和php_oracle.dll 文件復(fù)制到windwos的system32下
2、系統(tǒng)中應(yīng)當(dāng)有安裝ORCALE的系統(tǒng),然后配制遠(yuǎn)程ORACLE的的監(jiān)聽。就是你能用你配好的ORACLE系統(tǒng)訪問(wèn)遠(yuǎn)程的數(shù)據(jù)庫(kù)。
{例:
在ORACLE安裝目錄下找到tnsnames.ora,然后按下面的例子配置一下
BASETEST 命名=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = XX.XX.XX.XX服務(wù)器IP地址)(PORT = 1521端口))
)
(CONNECT_DATA = (SERVICE_NAME = masprod 實(shí)例ID))
)
}
3.在你的PHP網(wǎng)頁(yè)目錄下寫個(gè)測(cè)試連接的程序試試
?php
$dbconn=OCILogon("username","pwd","(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = [遠(yuǎn)程服務(wù)器IP])(PORT = 1515))
)
(CONNECT_DATA =
(SERVICE_NAME = [數(shù)據(jù)庫(kù)名字])
))");
if($dbconn!=false)
{
echo "連接成功";
if(OCILogOff($dbconn)==true)
{
echo "關(guān)閉連接成功!";//=這里有問(wèn)題
}
}
else
{
echo "連接失敗";
}
?
$conn = mysql_connect('主機(jī)地址', ‘用戶名’, ‘密碼’);
//mysql_query("SET NAMES 'gbk'", $conn);
mysql_select_db('數(shù)據(jù)庫(kù)', $conn);