我正在尝试显示mySQL数据库中其中一个表的简单表,但是在加载页面时收到以下消息。
connection failed:Connection refused
Username Password PhysicianID
我已经一遍又一遍地测试了我在代码中使用的凭据,并且 100% 确定它们是正确的。 我不确定可能导致此问题的原因。 下面是我的php代码:
<!DOCTYPE html>
<head>
<TITLE>Table That will NOT load</TITLE>
</head>
<body>
<table>
<tr>
<th>Username</th>
<th>Password</th>
<th>PhysicianId</th>
</tr>
<?php
$conn = mysqli_connect('host', 'root', 'password', 'MySQLDatabase');
if(!$conn) {
die("connection failed:" . mysqli_connect_error());
}
$sql = "Select * from Users";
$result = $conn-> query($sql);
if($result -> num_rows > 0) {
while ($row = $result-> fetch_assoc()) {
echo "<td><td>". $row["username"] ."</td><td>". $row["username"] ."</td><td>". $row[
"password"] ."</td><tr>";
}
echo "</table>";
}
else {
echo "0 result";
}
$conn-> close();
?>
</table>
</body>
</html>
请确保 mysql 服务器绑定到预期的 IP,该 IP 分配给您在 mysql_connect
中使用的host
值。
- 找出 IP:
nslookup <host>
- 在主机上,检查进程
mysql
绑定地址:ps -eaf | grep mysql
。(0.0.0.0/0 表示绑定主机的所有 IP,没问题(
如果两个命令获得不同的IP,那就是罪魁祸首。 特别是如果第二个只返回 127.0.0.1。然后,您需要调整 mysql 配置以绑定主机的外部 IP 地址。
它应该工作正常,但在这一行中:
$conn = mysqli_connect('host', 'root', 'password', 'MySQLDatabase');
检查您的主机名和密码是否正确。如果您使用本地主机并且未定义密码,则应为:
$conn = mysqli_connect('localhost', 'root', '', 'MySQLDatabase');
另外,在 php 中检查您的 HTML。您有两个<td>
标签开始,使用此顺序$row
您将在表中的PhysicianId下获得密码。
试试这个:
if($result -> num_rows > 0) {
while ($row = $result-> fetch_assoc()) {
echo "<tr><td>". $row["username"] ."</td><td>". $row["password"] ."</td><td>". $row[
"id"] ."</td></tr>";
}
echo "</table>";
}
else {
echo "0 result";
}