【问题标题】:how can i resolve my problem with sql request in php [closed]我如何解决我在 php 中的 sql 请求问题 [关闭]
【发布时间】:2021-09-24 05:46:39
【问题描述】:

我的 php.ini 中的 sql 请求有问题。我尝试使用“查询”,但是当我执行“获取”时出现错误。我知道这个错误是因为我的 sql 请求,但我找不到问题。

我的 php 代码:

            $host = 'localhost';
            $dbName = 'appliderencontre';
            $username = 'root';
            $pswd = '';

            try
            {
                $db = new PDO("mysql:host=" .$host .";dbName=" . $dbName, $username, $pswd);
                //$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            } 
            catch(PDOException $e)
            {
                echo $e;
            }

            $requete = "SELECT pseudo FROM user";
            $reponse = $db-> query($requete);

             while($donnee = $reponse->fetch()){
                 echo $donnee['pseudo'];
             }

            $reponse ->closeCursor();

这是我的错误:

我需要你的帮助,我找不到任何可以帮助我的东西。

非常感谢!

(对不起我的英语,我是初学者)。

【问题讨论】:

标签: php mysql sql pdo


【解决方案1】:

更改此代码:

 $db = new PDO("mysql:host=" .$host .";dbName=" . $dbName, $username, $pswd);

 $db = new PDO("mysql:host=" .$host .";dbname=" . $dbName, $username, $pswd);

因为dbname 必须是小写的。

【讨论】:

    【解决方案2】:

    尝试运行此代码并在 fetch 函数中使用 PDO::FETCH_OBJ

        $host = "localhost";
        $user = "root";
        $password = '';
        $dbname = "appliderencontre";
    
        try {
            $dns = "mysql:host=".$host.";dbname=".$dbname.";charset=utf8";
            $pdo = new PDO($dns, $user, $password);
            $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        } catch (PDOException $e) {
            echo "PDOError: " . $e->getMessage()." In ".__FILE__;
        }
        $query = 'SELECT pseudo FROM user';
        $query = $pdo->query($query);
        while ($row = $query->fetch(PDO::FETCH_OBJ)) {
            echo $row->pseudo;
            echo '<br>';
        }
    

    【讨论】:

    • 你改变了什么,为什么?请在您的答案中添加一些解释,以便其他人可以从中学习
    • 你怎么能确定它一定会起作用?向大家解释你做了什么改变,以及为什么它是必要的。请参阅How to Answer 以获取有关编写有用答案的更多指导(而不仅仅是鼓励货物崇拜复制粘贴猜测文化)。附言另请注意“肯定”的正确拼写。
    • @NicoHaase 请检查我的更新答案
    • 您仍然应该解释 为什么 与 OP 的代码相比这是必要的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-25
    相关资源
    最近更新 更多