mysql的錯(cuò)誤處理是靜默模式的,就是不提示錯(cuò)誤.但是可以使用mysql_error()和mysql_errno()兩個(gè)函數(shù)來(lái)獲得錯(cuò)誤信息和錯(cuò)誤代碼.
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到膠州網(wǎng)站設(shè)計(jì)與膠州網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋膠州地區(qū)。
操作的時(shí)候可以判斷語(yǔ)句執(zhí)行的結(jié)果,如果返回值是false就調(diào)用這兩個(gè)函數(shù)取得錯(cuò)誤提示.
info.php在CentOS
64位虛擬機(jī)運(yùn)行的時(shí)候,其中MySQL版本那一欄是空白信息。我查看了info.php源碼,開(kāi)始以為是MySQL數(shù)據(jù)庫(kù)的用戶名和密碼填寫(xiě)錯(cuò)了,仔細(xì)檢查沒(méi)有錯(cuò)誤之后,便查看了Apache的error_log,得到如下消息:
mysql_connect():
No
such
file
or
directory
在網(wǎng)上查了一下,說(shuō)是本地socket設(shè)置與默認(rèn)的不一樣,導(dǎo)致php無(wú)法找到mysql的socket文件。根據(jù)網(wǎng)上提供的方法,需要做如下操作。
首先,在MySQL中用status查看數(shù)據(jù)庫(kù)狀態(tài),如下所示:
mysql
Ver
14.14
Distrib
5.1.69,
for
redhat-Linux-gnu
(x86_64)
using
readline
5.1
Connection
id:
10
Current
database:
Current
user:
root@localhost
SSL:
Not
in
use
Current
pager:
stdout
Using
outfile:
''
Using
delimiter:
;
Server
version:
5.1.69
Source
distribution
Protocol
version:
10
Connection:
Localhost
via
UNIX
socket
Server
characterset:
latin1
Db
characterset:
latin1
Client
characterset:
latin1
Conn.
characterset:
latin1
UNIX
socket:
/var/lib/mysql/mysql.sock
Uptime:
20
hours
55
min
30
sec
其中,標(biāo)紅的部分是我們需要的。然后打開(kāi)php.ini文件,需要將mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket的值設(shè)置為標(biāo)紅后面的那個(gè)目錄。重啟apache服務(wù)器,后續(xù)info.php工作正常,MySQL的版本信息能夠正常顯示了。
看了你下面的內(nèi)容。是因?yàn)槟銛?shù)據(jù)庫(kù)的密碼錯(cuò)誤.所以導(dǎo)致沒(méi)有訪問(wèn)權(quán)限。你可以去看一看配置文件里面是不是有設(shè)置密碼的選項(xiàng)。(配置文件通常是config之類的)
第二條是查詢錯(cuò)誤,因?yàn)闆](méi)有連接到數(shù)據(jù)庫(kù),所以無(wú)法查詢
第三條是因?yàn)榈诙l沒(méi)有查詢,所以無(wú)法獲取數(shù)據(jù)