拒绝访问 localhost/phpmyadmin (HY000/1130) 权限错误

我的本地主机上有一个简单的数据库,我正在关注一本书

我在其中创建了表,但在使用共享文件地址后,即包括['SERVER_DOCUMENT'].'path of file'对 PHPMyAdmin 的访问被拒绝。

IT 说:

无法连接:无效设置。mysqli_real_connect(): (HY000/1130): Host 'localhost' is not allowed to connect to this MariaDB server connection for controluser as defined in your configuration failed. mysqli_real_connect(): (HY000/1130): Host 'localhost' is not allowed to connect to this MariaDB server phpMyAdmin 试图连接到 MySQL 服务器,服务器拒绝了连接。您应该检查配置中的主机、用户名和密码,并确保它们与 MySQL 服务器管理员提供的信息相对应。

我尝试卸载 XAMPP 但是当我在我的书上再次达到相同的点并从头开始做所有事情时它仍然做同样的事情

<?php

try {

  $pdo = new PDO('mysql:hostname=localhost;dbname=ijdb', 'ijdbuser', 'mypassword');

  $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $pdo->exec('SET NAMES "utf8"');

}

catch (PDOException $e) {

  $error = 'Unable to connect to server' . $e->getMessage();

  include 'error.html';

  exit();

}

?>

索引.php


<?php

include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/magicquotes.inc.php';

if (isset($_GET['addjoke'])) {

  include 'form.html';

  exit();

}

include $_SERVER['DOCUMENT_ROOT'] . '/includes/db.inc.php';


if (isset($_POST['joketext'])) {

  try {

    $sql = 'INSERT INTO joke SET

        joketext = :joketext,

        jokedate = CURDATE()';

    $s = $pdo->prepare($sql);

    $s->bindValue(':joketext', $_POST['joketext']);

    $s->execute();

  } catch (PDOException $e) {

    $error = 'Error adding submitted joke: ' . $e->getMessage();

    include 'error.html';

    exit();

  }

  header('Location: .');

  exit();

}

if (isset($_GET['deletejoke'])) {

  include $_SERVER['DOCUMENT_ROOT'] . '/includes/db.inc.php';

  try {

    $sql = 'DELETE FROM joke WHERE id = :id';

    $s = $pdo->prepare($sql);

    $s->bindValue(':id', $_POST['id']);

    $s->execute();

  } catch (PDOException $e) {

    $error = 'Error deleting joke: ' . $e->getMessage();

    include 'error.html';

    exit();

  }

  header('Location: .');

  exit();

}


我希望我的笑话页面被加载。


这是一张显示我上面列出的错误的图像:

http://img4.mukewang.com/61347c430001d8c512770726.jpg

慕村225694
浏览 161回答 3
3回答

不负相思意

在这种情况下,仔细阅读错误消息会有所帮助。phpMyadmin 消息可能是最有用的消息。我们来解析一下。phpMyAdmin 尝试连接 MySQL 服务器,服务器拒绝连接。好的,localhost服务器正在运行。您应该检查配置中的主机、用户名和密码出于某种原因,您提供的用户名/密码组合是错误的。并确保它们与 MySQL 服务器管理员提供的信息相对应。您是该 MySQL 服务器的管理员。阅读 xampp 文档并查找要使用的用户名和密码。在新的 xampp 安装中,默认的 MySQL 用户名是 (或曾经是) root。默认密码是零长度字符串。如果你想在你的 php 程序中使用不同的用户名/密码组合,你必须将新的用户名/密码组合添加到您的 MySQL 服务器,使用旧用户名从 phpmyadmin 登录以执行此操作。更新您的 db.inc.php 文件或您的 php 应用程序中的任何内容,提供用户名/密码。您的 php 程序登录到 MySQL。MySQL 是服务器软件,当您使用 xampp 时,它恰好在您的本地机器上运行。所以它和 MySQL 都必须就用户名/密码组合达成一致。恕我直言,我认为您应该重读本书中有关如何设置的部分。

函数式编程

我通过互联网搜索并找到了这个命令'mysqld --skip-grant-tables'在xampp shell中执行这个命令可能会重置特权,但不确定但让我的phpmyadmin页面恢复了。
打开App,查看更多内容
随时随地看视频慕课网APP