佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > php連接mysql之mysql_connect()與mysqli_connect()的區(qū)別

php連接mysql之mysql_connect()與mysqli_connect()的區(qū)別

熱門標簽:Mysql連接數(shù)設置 電子圍欄 團購網(wǎng)站 科大訊飛語音識別系統(tǒng) 銀行業(yè)務 服務器配置 Linux服務器 阿里云

實例

打開一個到 MySQL 服務器的新的連接:

?php
$con=mysqli_connect("localhost","wrong_user","my_password","my_db"); 
// 檢查連接 
if (!$con) 
{ 
die("連接錯誤: " . mysqli_connect_error()); 
} 
?>

定義和用法

mysqli_connect() 函數(shù)打開一個到 MySQL 服務器的新的連接。

語法

mysqli_connect(host,username,password,dbname,port,socket);

參數(shù) 描述
host 可選。規(guī)定主機名或 IP 地址。
username 可選。規(guī)定 MySQL 用戶名。
password 可選。規(guī)定 MySQL 密碼。
dbname 可選。規(guī)定默認使用的數(shù)據(jù)庫。
port 可選。規(guī)定嘗試連接到 MySQL 服務器的端口號。
socket 可選。規(guī)定 socket 或要使用的已命名 pipe。

技術細節(jié)

返回值: 返回一個代表到 MySQL 服務器的連接的對象。
PHP 版本: 5+

php連接mysql,為什么用mysqli_connect()而不用mysql_connect()

原先在做網(wǎng)頁時,php連接Mysql數(shù)據(jù)庫時,總使用mysql_connect()連接,使用如下:

?php
 $conn=mysql_connect("localhost","root","root");if(!$conn){die('Could not connect:'.mysql_error());} else echo("it done well.It has been connected well"); ?>

mysqli_connect()的使用如下:

?php $conn=mysqli_connect("localhost","root","root"); if(!$conn){ die('Could not connect:'.mysqli_error()); } else echo("it done well.It has been connected well"); ?>

1,這里面的mysql_connect("","",""),三個參數(shù)都不能少。第一個參數(shù)一般是本地站點,比如localhost,127.0.0.1。但也可以使用比如www.baidu.com,發(fā)現(xiàn)出現(xiàn)“Could not connect: 由于連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗?!碑敍]有登錄密碼時,可以采用mysql_connect("localhost","root","")或者mysql_connect("localhost","root")。后者直接省略了登錄密碼參數(shù),其前面的逗號需要一并省略

2,mysql_connect總提示即將被廢棄,建議使用mysqli。這個怎么使用還沒有使用。

3,基本的if......else......;注意分號表示這一命令語句的結束。

由于總是提示mysql_connect()基本上已經(jīng)廢棄,建議使用mysqli_connect()。將其改為mysqli_connect()后便沒有提示了。

修改后的為:

php
$con = mysqli_connect("localhost","root","root");
if(!$con)
{
die('Could not connect'.mysqli_error());
}
else echo("it done well . It has been connected well ");
?>

如果一切輸入正確倒不會出現(xiàn)什么問題。但如果輸入錯誤,mysql_conncet()可以給出錯誤原因,但mysqli_connect()不可以。不知道時什么原因。

php高版本不再使用mysql_connect()來連接數(shù)據(jù)庫

想用php生成一個mysql數(shù)據(jù)字典導出來,用到下面代碼會 

$mysql_conn = mysql_connect ( "$dbserver", "$dbusername", "$dbpassword" ) or die ( "Mysql connect is error." );

 在php5.5.12版本運行會提示 

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\soft\develop\php\wamp\2.5\wamp\www\generate_mysql.php on line 16 

看來會廢棄了,不建議使用了,程序無法運行的。使用mysqli or PDO 來替代。到高版本,根本無法使用這個函數(shù)了。

我想知道哪個php版本開始就會開始不建議使用這個函數(shù)了,所以去官網(wǎng)www.php.net搜索這個函數(shù)。有這樣的介紹:

 本擴展自 PHP 5.5.0 起已廢棄,并在將來會被移除。應使用 MySQLi 或 PDO_MySQL 擴展來替換之。參見 MySQL:選擇 API 指南以及相關 FAQ 以獲取更多信息。用以替代本函數(shù)的有: 

  • mysqli_connect()
  • PDO::__construct()

到此這篇關于php連接mysql之mysql_connect()與mysqli_connect()的區(qū)別的文章就介紹到這了,更多相關PHP mysqli_connect() 函數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:衡水 棗莊 萍鄉(xiāng) 江蘇 蚌埠 廣元 衢州 大理

巨人網(wǎng)絡通訊聲明:本文標題《php連接mysql之mysql_connect()與mysqli_connect()的區(qū)別》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    宕昌县| 亳州市| 绥江县| 刚察县| 林芝县| 宕昌县| 巴中市| 绍兴市| 平山县| 米易县| 如皋市| 永宁县| 道孚县| 连山| 新乡市| 安康市| 东至县| 台前县| 子洲县| 石城县| 东阳市| 武宁县| 乐陵市| 万州区| 隆回县| 萍乡市| 永修县| 临西县| 布拖县| 兴国县| 绥中县| 思南县| 太和县| 内丘县| 鲁甸县| 新野县| 贵德县| 赤城县| 浮梁县| 云和县| 工布江达县|