Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.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连接到MYSQL错误消息_Php_Mysql_Mysqli - Fatal编程技术网

将PHP连接到MYSQL错误消息

将PHP连接到MYSQL错误消息,php,mysql,mysqli,Php,Mysql,Mysqli,使用此代码连接到localhost时,我收到一条错误消息。我无法连接到MYSQL,我不确定原因: <?php //connect $link = mysqli_connect("$localhost", "$root", "$password", "$database"); if (!$link) { $output = 'Unable to connect to the database server.'; include 'output.html.php

使用此代码连接到localhost时,我收到一条错误消息。我无法连接到MYSQL,我不确定原因:

    <?php

//connect
$link = mysqli_connect("$localhost", "$root", "$password", "$database");
if (!$link)
{



    $output = 'Unable to connect to the database server.';
    include 'output.html.php';
    exit();
}

if (!mysqli_set_charset($link, 'utf8'))

    $output = 'Unable to set database connection encoding.';
    include 'output.html.php';
    exit();
}
if (!mysqli_select_db($link, '$database'))
{
    $output = 'Unable to locate the Teamster database.';
    include 'output.html.php';
    exit();
}
$output = 'Database connection established. ';
include 'output.html.php';
?>
我(不认为我可以)发表评论,但如果你发布了准确的错误消息,那会有所帮助

产量

mysql_connect_error()

但从我所知道的情况来看,您应该确保$localhost设置为某个值(可能是“localhost”),并且您使用的用户名和密码正确。

当系统可以告诉您出了什么问题时,永远不要输出固定的错误消息:

$output = 'Unable to connect to the database server:' . mysqli_connect_error();
如果您得到: //检查连接//如果(mysqli_connect_errno($con))/{echo“未能连接到MySQL:“.MySQL_connect_error();/}//

那么这就是你的问题:

$link = mysqli_connect("$localhost", "$root", "$password", "$database");
其中loclhost、用户名、密码、数据库组合不正确。 还要确保您位于正确的端口,并且允许您使用这些凭据进行连接


“无法连接到db”总是由于该行的某些组合,而不是因为代码,因为您在
if(!$link)

上失败了,我认为您缺少了
,连接命令的实现非常“奇怪”:
“localhost”
$localhost
,但肯定不是
“$localhost”
…能否将代码发布到
output.html.php
?能否发布变量$localhost、$root、$password、$database@arkascha:$localhost的
没有问题
。这是cargo cult编程,但无论哪种方式的计算结果都几乎相同。这是一个答案吗?@Marc B我是否应该删除该输出消息并添加“mysqli_connect_error()”?不,消息的文本很好。只是不要忽略mysql可能会告诉您的有关该问题的信息。例如。“出了点问题:事情就是这样”远比“出了点问题”有用。@MarcB很棒。您如何看待此错误消息:数据库连接已建立//检查连接//如果(mysqli_connect_errno($con))/{echo”无法连接到MySQL:“.MySQL_connect_error();/}//?>我检查了所有这些变量,它们看起来都是正确的。我正在使用默认的3306端口,但谁能确保我能够连接到这些凭据?到目前为止,我可以与Workbench进行连接。还有其他想法吗?再次感谢。与您的凭据一致的硬代码-并查看它是否连接-如果连接正确n您可能也做了一些事情,正如有人提到的,如果正在使用localhost,您不需要$localhost也谢谢您的输入azngunit81。我意识到我忘记了使用mysqli_select_db();及其参数来选择我的数据库。现在我收到的唯一消息是“无法选择数据库”“.有什么想法吗?我确定这是唯一一个不起作用的参数,因为我检查了其他每个参数。您是重新选择同一个数据库还是另一个?如果是另一个数据库,请确保您使用的凭据适用于该数据库。即:user1可以访问db1,但不能访问db2。。。
$link = mysqli_connect("$localhost", "$root", "$password", "$database");