语法有问题,提示了第二行错误,检查语句,最好做个输出,连接成功返回一个输出,不然你都不知道有没有连上,一步步排查
看你的代码和报的错应该是mysqli扩展没启用.
启用方法:
打开PHP的配置文件找到类似
extension=php_mysqli
将前面的;或者 # 去掉,然后重启apache等服务
html
head
title通过PHP连接MySQL/title
/head
body
php
//用mysql_connect函数打开一个到MySQL服务器的连接
//若成功则返回一个MySQL连接标识,失败则返回FAISE
$link = mysql_connect ( "localhost","root","password");
if(!$link){
//用die()函数显示信息并结束当前脚本
//用mysql_error函数返回上一个MySQL操作产生的错误信息
die ("未能连接到MySQL服务器:".mysql_error() );
}
echo "成功连接到MySQL服务器!";
mysql_close($link); //关闭MySQL连接
/body
/html
把我这个代码复制过去 重新尝试
你后来补充的错误 是因为mysql 没有连上上造成的 不是错误只算警告
有几个可能:
①程序是通过这个判断if($_SESSION['admin']=="OK")才进行连接数据库的.当这个条件不成立,则mysql并没有连接,所以mysql_close()才会报错.
info.php在CentOS
mysql_connect():
No
such
file
or
directory
在网上查了一下,说是本地socket设置与默认的不一样,导致php无法找到mysql的socket文件.根据网上提供的方法,需要做如下操作.
首先,在MySQL中用status查看数据库状态,如下所示:
mysql
Ver
Distrib
for
redhat-Linux-gnu
using
readline
Connection
id:
Current
database:
user:
root@localhost
SSL:
Not
in
use
pager:
stdout
Using
outfile:
''
delimiter:
;
Server
version:
Source
distribution
Protocol
Connection:
Localhost
via
UNIX
socket
characterset:
latin1
Db
Client
Conn.
socket:
/var/lib/mysql/mysql.sock
Uptime:
hours
min
sec
其中,标红的部分是我们需要的.然后打开php.ini文件,需要将mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket的值设置为标红后面的那个目录.重启apache服务器,后续info.php工作正常,MySQL的版本信息能够正常显示了.
故障状况:php网站连接mysql失败,但在命令行下通过mysql命令可登录并正常操作.
解决方案:
①.、命令行下登录mysql,执行以下命令:
复制代码
代码如下:show
variables
like
'socket';
执行后会得到类似于如下回显:
代码如下:
"Variable_name"
"Value"
"socket"
"/home/mysql/data/mysql.sock"
Default
name
local
MySQL
connects.
If
empty,
uses
the
built-in
defaults.
mysql.default_socket
=
/home/mysql/data/mysql.sock
以上就是土嘎嘎小编为大家整理的的php连接mysql报错相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!