我在连接外部数据库时遇到问题。
<?php
$db = new mysqli('mysql1.myregisteredsite.com', 'USERNAME', 'PASSWORD', '34928_Test2');
$sql = "SELECT * FROM Contacts";
$result = $db->query($sql);
if($db->connect_errno > 0){
die('Unable to connect to database: [' . $db->connect_error . ']');
}
?><!DOCTYPE html>
<html>
<head>
<title>SELECT Example</title>
</head>
<body>
<div id="wrapper">
<h1>Contacts from Our Contacts Table</h1>
<ul>
<? while ($row = $result->fetch_assoc()): ?>
<li><?= $row['First_Name'] ?></li>
<li><?= $row['Middle_Name'] ?></li>
<li><?= $row['Last_Name'] ?></li>
<? endwhile; ?>
</ul>
</div>
</body>
</html>
出了点问题,因为它没有显示任何内容。当它将其上传到服务器并尝试时,页面完全空白。我尝试使用PDO进行连接,使用XHTML 1.0 Strict而不是HTML 5进行声明,两者都具有相同的空白页结果。
当我尝试在本地运行时,我收到此错误:
警告:mysqli :: mysqli():( HY000 / 2000):mysqlnd无法连接 MySQL 4.1+使用旧的不安全认证。请使用 管理工具使用SET命令重置密码 密码=密码(&#39; your_existing_password&#39;)。这将存储一个新的, mysql.user中更安全的哈希值。如果使用此用户 您可能需要删除PHP 5.2或更早版本执行的其他脚本 你的my.cnf文件中的旧密码标志 第2行的C:\ xampp \ htdocs \ DBTest \ index.php
我已尝试创建新的用户/密码,但仍会产生相同的消息。我已经调用了我的域名注册商或他们调用的任何内容,并使用我的index.php文件中的凭据,他们能够连接到数据库,因此他们说这与我的代码编写方式有关但回想起来,我无法帮助我。
这只是一个简单的连接声明,为什么它不起作用?