php - 访问网络托管服务上 phpMyAdmin 的权限

标签 php mysql phpmyadmin

我使用 000webhost.com 创建了一个包含数据库的网站。现在,我尝试发布 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 代码如下( secret 信息用连字符替换):

<?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));
?>

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

如果有人能给我一些关于这里出了什么问题的线索,那就太好了。

最佳答案

您正在使用 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);
?>

关于php - 访问网络托管服务上 phpMyAdmin 的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29311544/

相关文章:

java - JDBC:连接到远程 mySQL 数据库?

php - 使用 PHP 的 jQuery 自动建议

javascript - 如何获取php var OpenWeatherMap中第二行js数据

php - PDO - 连接查询并输出正确的数据

php - 编辑值在 php 中无法正常工作

mysql - 将 phpMyAdmin docker 图像连接到仅在 127.0.0.1 上监听的 HOST MySQL 服务器

php - PHP 中的 System() 函数

php - 表单 Action 问题

php - 为单个请求的多个记录分配唯一键

php - 需要从输出中可用的最大 id 找到数据库值