sql >> データベース >  >> RDS >> Mysql

PDOステートメントを使用したテーブルデータの選択

    あなたは実際にやりすぎです:

    $query = $dbh->prepare("SELECT * FROM students");
    $query->execute();
    $result = $dbh->query($query);
    

    問題のある行は次のとおりです。

    $result = $dbh->query($query);
    

    http://php.net/pdo.query で確認してください 、パラメータは文字列であり、実際には上記ですでに使用しているSQL文字列であり、PDO::prepare()の結果値ではありません。 電話してください。

    簡単なクエリの場合は、次のようにすることができます。

    $result = $dbh->query("SELECT * FROM students");
    

    または、準備したい場合:

    $query = $dbh->prepare("SELECT * FROM students");
    $query->execute();
    $result = $query;
    

    後者は、変数をクエリに挿入する場合の定型文です。そのため、変数を準備します。

    次の問題はforeachにあります 行:

    foreach($result as $row);
    

    セミコロン;が原因で、ループをすぐに終了しています。 最後に。そのセミコロンを削除して、次の山かっこ付きのコードブロックがforeachループの本体になるようにします。



    1. 条項間のMySQLは包括的ではありませんか?

    2. iOS-コアデータとサーバーデータベースの同期のベストプラクティス

    3. ハイブリッドSQLServer環境に詳細な診断を提供する世界初のSaaSプラットフォームの紹介

    4. 結合を使用してPostgreSQLの異なるテーブルのデータを結合する