Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法使用MySQLi连接到数据库,但可以使用MySQL连接到数据库_Php_Mysql_Mysqli - Fatal编程技术网

Php 无法使用MySQLi连接到数据库,但可以使用MySQL连接到数据库

Php 无法使用MySQLi连接到数据库,但可以使用MySQL连接到数据库,php,mysql,mysqli,Php,Mysql,Mysqli,我最近发现MySQL扩展在PHP中已被弃用,并将很快被删除。我决定开始使用MySQLi,但在尝试将旧代码转换为新扩展时,我收到一个拒绝访问错误: Connect Error (1045) Access denied for user 'www-data'@'localhost' (using password: NO) 我在使用此代码时收到错误: $connect = new mysqli("localhost","root","password1"); $connect->conne

我最近发现MySQL扩展在PHP中已被弃用,并将很快被删除。我决定开始使用MySQLi,但在尝试将旧代码转换为新扩展时,我收到一个拒绝访问错误:

Connect Error (1045) Access denied for user 'www-data'@'localhost' (using password: NO)

我在使用此代码时收到错误:

$connect = new mysqli("localhost","root","password1");
$connect->connect();
$connect = mysql_connect("localhost","root","password1");

但当我使用此代码时,它工作正常:

$connect = new mysqli("localhost","root","password1");
$connect->connect();
$connect = mysql_connect("localhost","root","password1");

我不明白我做错了什么?

mysqli的
mysql\u connect()
版本是
mysqli\u connect()
。如果查看,您会发现
mysqli\u connect()
mysqli
对象的构造函数的别名,而不是它的方法之一。我希望这能帮你把事情弄清楚。祝你好运

您的systex是错误的<代码>$connect=newmysqli(“localhost”、“root”、“password1”)

你忘了数据库名

$connect->connect()
不需要

答案是:

$connect=mysqli_connect(“localhost”、“root”、“mypassw”、“mybatadase”)

$query=“从mytable中选择名称”

$result=$connect->query($query)

//显示信息:

while($row=mysqli\u fetch\u数组($result)){
echo$row[“name”]。“
”;
}

您不需要:
$connect->connect()
该参数是服务器详细信息的逗号分隔字符串。谢谢您,jreuab。删除
$connect->connect()
后,我再也没有收到错误。事实并非如此,请查看
dbname
是可选的,因为它也可以在SQL查询中提供,如下所示:
SELECT*FROM dbname.table