2

我有一个页面导航脚本,它在我的网站上每页返回 65 条记录。在我的托管服务提供商将我转移到另一台服务器之前,它一直运行良好。现在,当我转到该页面时,出现以下错误:

Warning: mysqli::connect() [mysqli.connect]: (28000/1045): Access denied for user 'root'@'localhost' (using password: NO) in /home/jumbleweed/public_html/registry/browse_2004.php on line 10

Warning: mysqli::query() [mysqli.query]: invalid object or resource mysqli in /home/jumbleweed/public_html/registry/page.php on line 34

Line 9:  $db = new mysqli('localhost', 'my_username', 'my_password', 'my_database');
Line 10: $db->connect();

page.php 的第 34 行:

public function countRecords() {
            //returns the number of records
            global $db;
            $count_query = "SELECT COUNT(*) FROM (".$this->query.") as temp";
Line 34:    $result = $db->query($count_query);
            $row = $result->fetch_row();
            return $row[0];
        }

显然,我填写了正确的登录凭据以连接到数据库,但它似乎忽略了它们并尝试使用 root 作为用户名登录。

这是我的托管服务提供商以及他们如何设置服务器的问题吗?

4

2 回答 2

1

由于您使用的是 MySQLi 构造函数,因此无需使用该connect()方法,因为它会自动连接到数据库。

删除此行,它应该可以工作...

Line 10: $db->connect();
于 2012-12-20T16:26:12.487 回答
0

是的,根据评论者,我会放弃 ->connect() 电话。这就是破坏您的代码的原因。并切换到 localhost,因此它使用套接字而不是 IP 连接。

于 2012-12-20T16:09:32.503 回答