在 web 托管服务上访问 phpMyAdmin 中的权限

Accessing permissions in phpMyAdmin on a web hosting service

我使用 000webhost.com 创建了一个带有数据库的网站。现在,我正在尝试 post 2 个查询:一个用于添加字段,一个用于从数据库中检索所有数据。我已经有了第一个查询(要添加),但是当我尝试进行第二个查询时,出现以下错误:

Warning: mysql_query() [function.mysql-query]: Access denied for user 'a7172693'@'localhost' (using password: NO) in /home/a7172693/public_html/retrieve.php on line 11

我的PHP查询代码如下(私密信息用连字符代替):

<?php
header('content-type:application/JSON');

$mysqli = new mysqli('---------------------', '-------------', '--------', '-------------');

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$result = mysql_query('SELECT * FROM TableName');

echo json_encode(mysql_fetch_assoc($result));
?>

现在,这段代码应该只是 return 一个包含所有字段和所有内容的数组,但它给了我上面的警告。

如果有人能告诉我这里出了什么问题,那就太好了。

您正在使用 mysqli 作为数据库驱动程序,然后尝试使用 mysql 查询您的数据库。将您的代码更改为此

<?php
header('content-type:application/JSON');
/* open connection*/
$connection = new mysqli_connect('---------------------', '-------------', '--------', '-------------');

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
$query = "SELECT * FROM TableName";
$json_array = array ();
if ($result = $mysqli->query($query)) {

    /* fetch associative array */
    while ($row = $result->fetch_assoc()) {
        $json_array = $row;
    }

    /* free result set */
    $result->free();
}

/* close connection */
$mysqli->close();

echo json_encode($json_array);
?>