php - fatal error : Uncaught exception 'PDOException' with message

标签 php mysql pdo

<分区>

我正在尝试运行 MySQL PDO 查询。我不确定为什么会出现 fatal error 。我查看了其他帖子,但他们的答案似乎无法解决我的问题。

脚本可以正常连接到数据库。用户名和密码正确,我已在下面的脚本中将其删除。

我的输出:

Connected to database
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[28000] [1045] Access denied for user 'nobody'@'localhost' (using password: NO)' in /home/a/public_html/d/inc/header.php:34 Stack trace: #0 /home/a/public_html/d/inc/header.php(34): PDO->__construct('mysql:host=;dbn...', NULL, NULL) #1 /home/a/public_html/d/inc/header.php(43): testdb_connect() #2 /home/a/public_html/d/article.php(3): include('/home/a/p...') #3 {main} thrown in /home/a/public_html/d/inc/header.php on line 34

我的代码:

<?php
    /*** MySQL  hostname ***/
    $hostname = 'localhost';
    /*** MySQL  username ***/
    $username = 'removed';
    /*** MySQL  password ***/
    $password = 'removed';
    try {
        function testdb_connect(){
            $dbh = new PDO("mysql:host=$hostname;dbname=removed", $username, $password);
            return ($dbh);
        }
            echo 'Connected to database';
        }
    catch(PDOException $e) {
        echo $e->getMessage();
    }

    $dbh = testdb_connect();

    $id = $_GET[id];
    echo 'dfsdfs ' . $id;
    var_dump($dbh);
    $sql = "SELECT * FROM 'radiologyArticles' WHERE 'id' = :id";
    $stmt = $dbh->prepare($sql);
    $stmt->bindParam(':id', $id);
    $stmt->execute();
    while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {

?>

        <section>
            <header>
                <h2><?php echo $row['articleTitle']; ?></h2>
                <h3>A generic two column layout</h3>
            </header>
            <p>
                <?php echo $row['articleBody']; ?>
            </p>
        </section>

        <?php
    }
            // Close the PDO connection
            $link = null;
        ?>

最佳答案

/*** MySQL hostname ***/
$hostname = 'localhost';
/*** MySQL username ***/
$username = 'removed';
/*** MySQL password ***/
$password = 'removed';

function testdb_connect ($hostname, $username, $password){
    $dbh = new PDO("mysql:host=$hostname;dbname=removed", $username, $password);
    return $dbh;
}

try {
    $dbh = testdb_connect ($hostname, $username, $password);
    echo 'Connected to database';
} catch(PDOException $e) {
    echo $e->getMessage();
}

关于php - fatal error : Uncaught exception 'PDOException' with message,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23855518/

相关文章:

MySQL:存储过程中准备好的语句 - 参数错误 1064

mysql - 集群中的aws aurora rds(mysql)无法插入表情符号

php - 检查用户凭据 PHP MySQL

PHP - 从 MySQL 表中获取大数组的有限 block

javascript - 使用javascript sdk解析平台用户登录,但无法使用PHP SDK获取哪个用户登录

mysql - 如何在 select 语句中删除斜线

mysql - Symfony+推进 : Setting connection collation

php - SQL 查询运行速度超慢

php - 错误 - 网关报告交易成功,但响应来自有效 IP 列表中未指定的 IP :

javascript - JW Player 根据耗时执行操作