使用phpmyadmin导入数据库后出错:未定义属性:PDO :: $ connect_error

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用phpmyadmin导入数据库后出错:未定义属性:PDO :: $ connect_error相关的知识,希望对你有一定的参考价值。

  1. 我使用scp将我的脚本从远程服务器复制到我的localhost。
  2. 然后我使用phpmyadmin中的导出和导入函数将数据库复制到我的localhost。
  3. 当我在localhost中输入网站时,我得到完全相同的输出,但在include('config.php') - >“Undefined property:PDO :: $ connect_error”之后的行上有错误消息

我更改了localhost config.php文件中的用户名和密码,因为我在本地phpmyadmin上使用了不同的登录信息。除此之外,他们是完全相同的文件。

我的config.php文件:

<?php
$dbh = new PDO(
                'mysql:host=localhost;dbname=mydatabase;charset=utf8',
                'root',
                'pw123',
                array(
                        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
                        PDO::ATTR_PERSISTENT => false
                )
        );

?>

有人可以解释可能导致错误消息的原因吗?


这对我有用:

我在index.php中的第一行:

// Check connection
if ($dbh->connect_error) {
    die("Connection failed: " . $dbh->connect_error);
}
include('header.php');

我的header.php中的前两行:

error_reporting( error_reporting() & ~E_NOTICE );
ini_set('display_errors', true);

解决方案:当我将这两行复制到index.php脚本中时,错误消息消失了。如果有人知道为什么,请向我们解释。

答案

未定义的属性:PDO :: $ connect_error

如果你检查manual,你会发现PDO实例根本没有公共属性。与mysqli不同,PDO总是会因连接错误而抛出异常。

tl; dr - 完全删除该条件,不要只隐藏错误消息

以上是关于使用phpmyadmin导入数据库后出错:未定义属性:PDO :: $ connect_error的主要内容,如果未能解决你的问题,请参考以下文章

使用 phpMyAdmin 导入 SQL 文件时出错

从 phpMyAdmin 导出的数据库导入 phpMyAdmin 时出错

从 phpMyAdmin 使用导出/导入 SQL 文件时出错

phpmyadmin:导入数据库后,主键没有自动递增属性

phpmyadmin 导入到我的本地主机数据库时出错

将文件 sql 导入 phpmyadmin 时出错超时?