$result = mysqli_query($connect, $query) or die ('Error querying database.'. mysqli_error($connect )))
查看一下返回什么错误描述,然后根据错误描述进行修改,当然也可以查看mysql的错误日志啦
ps:光从代码上没看出错误,有可能数据库里的字段名你写错了
info.php在CentOS64位虚拟机运行的时候,其中MySQL版本那一栏是空白信息。我查看了info.php源码,开始以为是MySQL数据库的用户名和密码填写错了,仔细检查没有错误之后,便查看了Apache的error_log,得到如下消息:
mysql_connect():
No
such
file
or
directory
在网上查了一下,说是本地socket设置与默认的不一样,导致php无法找到mysql的socket文件。根据网上提供的方法,需要做如下 *** 作。
首先,在MySQL中用status查看数据库状态,如下所示:
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
其中,标红的部分是我们需要的。然后打开php.ini文件,需要将mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket的值设置为标红后面的那个目录。重启apache服务器,后续info.php工作正常,MySQL的版本信息能够正常显示了。
应该是数据库连接失败导致的,你可以打开调试模式,然后在连接数据库的时候进行判断,你可以先在成功之后设置一个die,就是停止程序运行,看看浏览器显示500吗?如果不显示,那就是后面的语句有问题,如果显示,那就是mysqli有问题,看看有没有这个驱动,最好是看下php和服务器的日志。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)