php不能连接数据库 php不能连接数据库怎么解决

PHP无法连接mysql

用户名密码不对。

创新互联建站专注于耿马网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供耿马营销型网站建设,耿马网站制作、耿马网页设计、耿马网站官网定制、成都小程序开发服务,打造耿马网络公司原创品牌,更为您提供耿马网站排名全网营销落地服务。

如果你是在本地测试,有数据库管理权限,可以查看下有没有 bookhbw这个用户

select * from mysql.user

如果没有可以新建用户,或者在代码里直接使用root账户及密码连接(测试环境无所谓,如果是正式环境,一定要单独建一个用户,分配对应数据库的权限 )

-- 创建用户

create user bookhbw@'localhost' identified by '密码';

-- 授权用户指定的数据库权限

GRANT ALL PRIVILEGES ON 数据库名.* TO 'bookhbw'@'localhost';

-- 刷新权限

FLUSH PRIVILEGES;

如果你的数据库中已经有这个账户,看下这个账户设置的Host 是localhost还是ip 还是 %

如果是ip 或者 % 则连接的服务器地址只能写ip 不能写localhost (可以新建一个同名用户绑定localhost)

以上情况,你根据自己的软件 配置,自行设置一下

我的php就是和数据库无法建立连接

一、常用普通方法

$mysql_server="localhost";

$mysql_username="数据库用户名";

$mysql_password="数据库密码";

$mysql_database="数据库名";

//建立数据库链接

$conn = mysql_connect($mysql_server,$mysql_username,$mysql_password) or die("数据库链接错误");

//选择某个数据库

mysql_select_db($mysql_database,$conn);

mysql_query("set names 'utf8'");

//执行MySQL语句

$result=mysql_query("SELECT id,name FROM 数据库表");

//提取数据

$row=mysql_fetch_row($result);

在提取数据的时候,我们使用mysql_fetch_row,还可以使用mysql_fetch_assoc和mysql_fetch_array,具体的我们参考手册。

第二、面向对象方法

$db=new mysqli($dbhost,$username,$userpass,$dbdatabase);

if(mysqli_connect_error()){

echo 'Could not connect to database.';

exit;

}

$result=$db-query("SELECT id,name FROM user");

$row=$result-fetch_row();

第三、PDO方法

$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase.';'

$dbh=new PDO($dsn,$username,$userpass);$stmt=$dbh-query('SELECT id,name FROM user');

$row=$stmt-fetch();

推荐第三种连接方式

PHP连接数据库连接不上

首先确认数据库名是否写错,然后看引入路径是否正确。最后看语法是否正确。没有报错提示,只能想到这些。

为什么php连接不了数据库?

这个错误的意思是文件没有找到,需要的文件名是:数据库连接.PHP

你检查文件是否存在,确保正确文件存在即可解决。

当然,有时候看起来存在,实际上电脑认为不存在,这就是汉字编码问题,看起来一样的汉字,在UTF-8、GBK下的电脑存储数据是不同的。建议所有的PHP文件名都使用英文,这样可以避免编码问题。

PHP登陆注册页在本地测试时,出现连接数据库失败的情况怎么办?

1、检查环境正常

使用mysql -u root -p 可以进入MySQL操作界面

直接使用/usr/local/php5/bin/php /web/test.php执行可以连上数据库

2、打开hosts加入

复制代码代码如下:127.0.0.1 qttc

使用qttc当主机连接也正常,唯独就不认localhost。

3、localhost连接方式不同导致

为了了解PHP连接数据库时,主机填写localhost与其它的区别阅读了大量资料,最后得知:

当主机填写为localhost时mysql会采用 unix domain socket连接

当主机填写为127.0.0.1时mysql会采用tcp方式连接

这是linux套接字网络的特性,win平台不会有这个问题

4、解决方法

在my.cnf的[mysql]区段里添加

复制代码代码如下:

protocol=tcp

保存重启MySQL,问题解决!

PHP的网站时常连接不上Mysql数据库。

web方式的mysql数据库”

如果没理解错的话应该是phpmyadmin吧?

只是mysql的可视化而已

php连接mysq方式没变

使用php的数据库操作函数连接mysql即可,可以用以下代码测试是否能连接mysql:

?php

$link

=

mysql_connect("localhost(主机)",

"root(数据库用户)",

"(数据库密码)")

or

die("could

not

connect:

"

.

mysql_error());

print

("connected

successfully");

mysql_close($link);


当前文章:php不能连接数据库 php不能连接数据库怎么解决
转载源于:http://scyanting.com/article/hhcegg.html