A. 如何在php中連接MySQL資料庫
php鏈接mysql必備條件:
已安裝mysql資料庫;
檢查php環境是否已開啟mysql擴展(一般情況下是開啟的);
檢查方法:a.使用phpinfo();函數,看有沒有mysql項;b.打開php.ini文件,檢查php_mysql.dll前分號是否已取掉。
php鏈接代碼如下:
<?php
//設置編碼格式
header("Content-type:text/html;charset=utf-8");
//定義資料庫主機地址
$host="localhost";
//定義mysql資料庫登錄用戶名
$user="root";
//定義mysql資料庫登錄密碼
$pwd="";
//鏈接資料庫
$conn = mysql_connect($host,$user,$pwd);
//對連接進行判斷
if(!$conn){
die("資料庫連接失敗!".mysql_errno());
}else{
echo "資料庫連接成功!";
}
?>
B. PHP同時連接多個mysql資料庫示例代碼
這篇文章主要介紹了PHP同時連接多個mysql資料庫的具體實現,需要的朋友可以參考下
實例:
代碼如下:
<?php
$conn1
=
mysql_connect("127.0.0.1",
"root","root","db1");
mysql_select_db("db1",
$conn1);
$conn2
=
mysql_connect("127.0.0.1",
"root","root","db2");
mysql_select_db("db2",
$conn2);
$sql
=
"select
*
from
ip";
$query
=
mysql_query($sql);
if($row
=
mysql_fetch_array($query))
echo
$row[0]."n";
$sql
=
"select
*
from
web
";
$query
=
mysql_query($sql);
if($row
=
mysql_fetch_array($query))
echo
$row[0];
?>
這段代碼存在問題,在程序執行時會報錯:PHP
Warning:
mysql_fetch_array()
expects
parameter
1
to
be
resource,
boolean
given
in
....
原因分析:
程序開始建立兩個資料庫鏈接,函數mysql_query()原型:
resource
mysql_query
(
string
$query
[,
resource
$link_identifier
]
)
向與指定的連接標識符關聯的伺服器中的當前活動資料庫發送一條查詢。如果沒有指定
link_identifier,則使用上一個打開的連接。如果沒有打開的連接,本函數會嘗試無參數調用
mysql_connect()
函數來建立一個連接並使用之。查詢結果會被緩存。
在本例中由於沒有指定link_identifier,所以,在執行第一條sql時,默認使用的是上一個打開的鏈接,即$conn2,而實際上第一條sql語句應該使用的是$conn1,所以導致報錯,所以為了能夠鏈接多個mysql資料庫,可以使用如下方法:
方法1:在mysql_query函數中指定所用連接,即:
代碼如下:
<?php
$conn1
=
mysql_connect("127.0.0.1",
"root","root","db1");
mysql_select_db("Muma",
$conn1);
$conn2
=
mysql_connect("127.0.0.1",
"root","root","db2");
mysql_select_db("proct",
$conn2);
$sql
=
"select
*
from
ip";
$query
=
mysql_query($sql,$conn1);
//添加連接$conn1
if($row
=
mysql_fetch_array($query))
echo
$row[0]."n";
$sql
=
"select
*
from
web
";
$query
=
mysql_query($sql,
$conn2);
if($row
=
mysql_fetch_array($query))
echo
$row[0];
?>
方法2:在sql語句中關聯所用資料庫,此時可以省略mysql_query的第二個參數,即:
代碼如下:
<?php
$conn1
=
mysql_connect("127.0.0.1",
"root","root","db1");
mysql_select_db("db1",
$conn1);
$conn2
=
mysql_connect("127.0.0.1",
"root","root","db2");
mysql_select_db("db2",
$conn2);
$sql
=
"select
*
from
db1.ip";
//關聯資料庫
$query
=
mysql_query($sql);
if($row
=
mysql_fetch_array($query))
echo
$row[0]."n";
$sql
=
"select
*
from
db2.web
";
$query
=
mysql_query($sql);
if($row
=
mysql_fetch_array($query))
echo
$row[0];
?>
C. php關於連接mysql函數的應用
mysql_fetch_array()
函數從結果集中取得一行作為關聯數組,或數字數組,或二者兼有。
返回根據從結果集取得的行生成的數組,如果沒有更多行則返回
false。
mysql_fetch_array(data,array_type)
參數data:可選。規定規定要使用的數據指針。該數據指針是
mysql_query()
函數產生的結果。
參數:array_type可選。規定返回哪種結果。該參數可選值:MYSQL_ASSOC
-
關聯數組
MYSQL_NUM
-
數字數組
MYSQL_BOTH
-
默認。同時產生關聯和數字數組
。
注釋:mysql_fetch_array()
是
mysql_fetch_row()
的擴展版本。除了將數據以數字索引方式儲存在數組中之外,還可以將數據作為關聯索引儲存,用欄位名作為鍵名。
例子:
<?php
$con
=
mysql_connect("localhost",
"hello",
"321");
if
(!$con)
{
die('Could
not
connect:
'
.
mysql_error());
}
$db_selected
=
mysql_select_db("test_db",$con);
$sql
=
"SELECT
*
from
Person
WHERE
Lastname='Adams'";
$result
=
mysql_query($sql,$con);
print_r(mysql_fetch_array($result));
mysql_close($con);
?>
輸出類似:
Array
(
[0]
=>
Adams
[LastName]
=>
Adams
[1]
=>
John
[FirstName]
=>
John
[2]
=>
London
[City]
=>
London
)
///////////////////////
mysql_fetch_assoc()
函數從結果集中取得一行作為關聯數組。
返回根據從結果集取得的行生成的關聯數組,如果沒有更多行,則返回
false。
mysql_fetch_assoc(data)
參數:data(必需)要使用的數據指針。該數據指針是從
mysql_query()
返回的結果。
注釋:mysql_fetch_assoc()
和用
mysql_fetch_array()
加上第二個可選參數
MYSQL_ASSOC
完全相同。它僅僅返回關聯數組。這也是
mysql_fetch_array()
初始的工作方式。
提示:如果在關聯索引之外還需要數字索引,用
mysql_fetch_array()。
注意:本函數返回的欄位名是區分大小寫的。
例子如下:
<?php
$con
=
mysql_connect("localhost",
"hello",
"321");
if
(!$con)
{
die('Could
not
connect:
'
.
mysql_error());
}
$db_selected
=
mysql_select_db("test_db",$con);
$sql
=
"SELECT
*
from
Person
WHERE
Lastname='Adams'";
$result
=
mysql_query($sql,$con);
print_r(mysql_fetch_assoc($result));
mysql_close($con);
?>
輸出:
Array
(
[LastName]
=>
Adams
[FirstName]
=>
John
[City]
=>
London
)
完。給的這么詳細,加分吧~
D. php中連接mysql的函數mysql_connect()如何使用
msyql_connect(資料庫伺服器地址,資料庫伺服器登陸用戶,資料庫伺服器登陸密碼);
E. php連接mysql資料庫
您好,非常榮幸能在此回答您的問題。以下是我對此問題的部分見解,若有錯誤,歡迎指出。<?
function conn(){
$conn01 = mysql_connect("localhost",'root','123456');//root是帳號,123456是密碼
$mycon=mysql_select_db('testdatabase',$conn01); //testdatabase是mysql資料庫名
if($mycon){
echo("資料庫連接成功");
}else{
echo("資料庫連接失敗");
}
}
conn();
?>非常感謝您的耐心觀看,如有幫助請採納,祝生活愉快!謝謝!
F. php連接mysql資料庫,用什麼函數
第一個問題:的1是把mysql的鏈接函數做了封裝,即封裝成類了,而2是直接使用mysql提示的內置函數鏈接資料庫,原則上用1更好一點,提供了對象,日後也方便修改移值。
第二個問題:原因是你沒有把mysql類放道對應目錄里,所以你實例化時,他就報錯,說找不到這個類。
G. 用php如何連接MySQL資料庫
php鏈接mysql必備條件:
已安裝mysql資料庫;
檢查php環境是否已開啟mysql擴展(一般情況下是開啟的);
檢查方法:a.使用phpinfo();函數,看有沒有mysql項;b.打開php.ini文件,檢查php_mysql.dll前分號是否已取掉。
php鏈接代碼如下:
<?php
//設置編碼格式header("Content-type:text/html;charset=utf-8");//定義資料庫主機地址$host="localhost";//定義mysql資料庫登錄用戶名$user="root";//定義mysql資料庫登錄密碼$pwd="";//鏈接資料庫$conn=mysql_connect($host,$user,$pwd);//對連接進行判斷if(!$conn){die("資料庫連接失敗!".mysql_errno());}else{echo"資料庫連接成功!";}?>
H. 在PHP的mysqli擴展中,連接資料庫的函數是什麼
mysqli_connect,手冊上的例子如下圖:
I. 關於php連接mysql函數
由於沒有看到完整的代碼,僅就看到的代碼試作解答如下:
1.
Notice:
Undefined
variable:
db
in
C:\xampp\htdocs\shop\files\mysql.php
on
line
5
警告:未字義的變數db(第5行不太清楚是哪行代碼)。
這個錯誤提示,從已知的代碼來看,其原因應該是你在函數體里引用了一個函數體外定義的變數(db),從代碼看其實就是沒有注意到,
對於變數
作用域范圍(全局、局部)錯誤應用的問題。
簡單的說,函數
select_mycx
里找不到
db。
解決辦法:
(1).
用參數傳遞進去。
function
select_mycx($table,$by,$select_str,$number,$db)
{
.....
}
(2).
在參數體里定義全局變數引用:
function
select_mycx($table,$by,$select_str,$number)
{
global
$db;
....
}
2.Fatal
error:
Call
to
a
member
function
query()
on
a
non-object
in
C:\xampp\htdocs\shop\files\mysql.php
on
line
5
這個錯誤實際上是上面的錯誤引起的,因為$db沒有正確引入,所以再
query
當然不能正確執行。