警告:php_network_getaddresses:getaddrinfo失败:没有这样的主机

时间:2015-05-22 18:39:56

标签: php

我知道这里曾多次询问同样的警告。 但在所有查询中,我在程序中看到了一些错误,因为用户无法访问数据库。

但在我的情况下,我直接使用拥有数据库访问权限的用户访问,但即便如此,此警告即将到来

php_network_getaddresses: getaddrinfo failed: No such host is known

<?php

$conn_error = 'Could not connect.';
$mysql_host  = 'localhost';
$mysql_user = 'root';
$mysql_pass = '';

$mysql_db = 'a_database';

if(!mysqli_connect('mysql_host','mysql_user','mysql_pass','mysql_db')){
die($conn_error);
}
else{
  echo 'connected';
}

它提供了未连接的错误消息。

尽管用户有权访问数据库。 enter image description here

1 个答案:

答案 0 :(得分:6)

您忘了将$放入(作为变量)

if(!mysqli_connect('mysql_host','mysql_user','mysql_pass','mysql_db'))

这些被视为字符串。

  • 您正在尝试连接到名为“mysql_host”的主机,这就是为什么它没有根据$mysql_host = 'localhost';找到预期的“localhost”服务器地址。

因此,用;删除引号时。

旁注:如果您打算将$放在单引号内,它将无效。变量不会用单引号解析,而是用双引号解析,但这里不需要它们。请参考下面的“参考资料”。

if(!mysqli_connect($mysql_host, $mysql_user, $mysql_pass, $mysql_db))

die($conn_error);(无法连接。)对您没有帮助。

这样做:

参考(S):