【发布时间】:2018-10-11 06:54:41
【问题描述】:
我仍然不熟悉从带有 php 的 html 网络表单到数据库的发布,但我认为我已经能够拼凑出我需要的一切。但是仍然缺少一些东西,我不知道是什么。
我测试了我的连接和表格:
<?php
$link = mysqli_connect("localhost","#user","#password", "#database");
if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
$test_query = "SHOW TABLES FROM" $#database;
$result = mysqli_query($connect, $test_query);
$tblCnt = 0;
while($tbl = mysqli_fetch_array($result)) {
$tblCnt++;
#echo $tbl[0]."<br />\n";}
if (!$tblCnt) {
echo "There are no tables<br />\n";
} else {
echo "There are $tblCnt tables<br />\n";
}
mysqli_close($link);
?>
我尝试了 127.0.0.1 和访问主机 IP (RemoteMySQL) 无济于事。我的用户拥有完全权限。我不知道有任何其他默认安全措施可能会妨碍我。
我在 Bluehost 托管,使用 MySQL 和 phpmyadmin。我的数据库中有 2 个表,当我在 phpmyadmin 中键入“SHOW TABLES”时可以找到它们。我错过了什么?这超出了我的认知。我已经束手无策了……
非常感谢!
【问题讨论】:
-
在 else 条件下您的代码有错误后,您缺少一个花括号。
-
您在调用 mysqli_connect 后检查错误,但不是在随后的 mtsqli_ 调用之后(这会揭示问题)
-
代码完全从模板复制来检查连接。我刚刚删除了敏感信息,并且(只是注意到)我更改了 SHOW TABLES 行。无论哪种方式,它都会返回相同的错误零表。 symcbean,你能指定什么是 mtsqli_calls 以及它们有什么帮助吗?我不确定我是否正确连接到错误,或者我创建的表是否实际上不可访问。谢谢!
标签: php phpmyadmin forms http-post