-1

テーブル内の2つの特定の列のデータを一覧表示しようとしています。ファイルに移動するたびに、サーバーエラーが返されます。whileループを削除すると、完全に実行されるため、何が間違っているのかわかりません。

エラーは次のとおりです。

サーバーエラー http://dayzlistings.com/reg-whitelist.phpの取得中にWebサイトでエラーが発生しました。メンテナンスのためにダウンしているか、正しく構成されていない可能性があります。ここにいくつかの提案があります:後でこのウェブページをリロードしてください。HTTPエラー500(内部サーバーエラー):サーバーが要求を実行しようとしたときに、予期しない状態が発生しました。

try {
    $dbh = new PDO('mysql:host=localhost;dbname=dbname','dbuser','dbpass');
            $sql = "SELECT * from wp_cimy_uef_data";
            $q = $dbh->prepar($sql);
            $q->execute();
                while($row = $q->fetchall() {
                    echo $row['USER_ID'];
                    echo $row['VALUE'];
                }
    }
$dbh = null;
} catch (PDOException $e) {
    print "Error from Dedicated Database!: " . $e->getMessage() . "<br/>";
    die();
}
4

2 に答える 2

0

500は、サーバーと対話するときに何か問題があることを意味します(例:アクセスデータベース)。そして$row['USER_ID']、動作することはありません。代わりに、を使用する必要があります$row[0]['USER_ID']

于 2013-02-10T04:16:50.430 に答える
0

fetchAll()テーブル全体を配列として返しませんか?..

$ rowをwhileループする必要はありません$row = $q->fetchAll()。whileなしで実行し、配列全体をprint_rして、何が得られるかを確認してください。

そして、私があなたが使うかもしれないと思う間、あなたがまだやりたいなら

while($row = $q->fetch()){
//  rest of the code here
}

また、trycatchの間に何も入れられません。

try{
//code
}
$dbh = null; //**This is not allowed by the way...**
catch(PDOException $e){
  //code

}

ディン

于 2013-02-10T01:40:51.730 に答える