PHP7连接mysql数据库方法

PHP7连接mysql数据库方法,第1张

1、用 mysql_connect 的方法,PHP7会报致命错误

$conn= mysql_connect('localhost','xueyanxiang','xueyanxiang')

Fatal error : Uncaught Error: Call to undefined function mysql_connect() in /Users/xueyanxiang/work/test/xue.php:31 Stack trace: #0 /Users/xueyanxiang/work/test/xue.php(119): xue->run() #1 {main} thrown in  /Users/xueyanxiang/work/test/xue.php  on line  31

原因是:

PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,MySQL就不推荐使用了,属于废弃函数

PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:

本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。参见 MySQL:选择

API 指南以及相关 FAQ 以获取更多信息。用以替代本函数的有:

mysqli_connect()

PDO::__construct()

使用时,不要在使用mysql_connect了,可以换用mysqli_connect(),用法基本类似吧,据说是面向对象的库。

php.ini中,也只有extension=php_mysqli.dll,而不再有extension=php_mysql.dll这个拓展了。

2、可以使用mysqli,对象化,方法名与被废弃的类似

$conn= mysqli_connect('localhost','xueyanxiang','xueyanxiang')

3、PDO工具,推荐使用

$dbh= "mysql:host=localhostdbname=test"

$db= new PDO($dbh,'xueyanxiang','xueyanxiang')

$objQuery= $db->query("select * from user")

$res= $objQuery->fetchAll(PDO::FETCH_ASSOC)

不填写参数的话,默认是关联和索引都有,如下图

决方法:

1。

改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改

"mysql"

数据库里的

"user"

表里的

"host"

项,从"localhost"改称"%"

mysql

-u

root

-pvmwaremysql>use

mysqlmysql>update

user

set

host

=

'%'

where

user

=

'root'mysql>select

host,

user

from

user

2.

授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT

ALL

PRIVILEGES

ON

*.*

TO

'myuser'@'%'

IDENTIFIED

BY

'mypassword'

WITH

GRANT

OPTION

如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

GRANT

ALL

PRIVILEGES

ON

*.*

TO

'root'@'192.168.1.3'

IDENTIFIED

BY

'mypassword'

WITH

GRANT

OPTION


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6151961.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存