1

通常は正常に動作する MySQL データベースからリストを取得しようとしています。しかし、今日はこのエラーが発生していますFatal error: Call to a member function setFetchMode() on a non-object in "Way too long path to file here"

これは私のPHPコードです:

$conn = new PDO('mysql:host=localhost;port=3306;name=erty', 'erty', 'Ops, that my password ...');

$result = $conn->query("SELECT name FROM mod_devs");
$result->setFetchMode();
foreach ($result as $row) { 
    echo '<tr><td>'.$row['name'].'</td></tr>';
}

さて、あなたはおそらく私の目標を理解しています:)

4

4 に答える 4

1

通常Call to a member function setFetchMode() on a non-object、$result が利用できないことを意味します。おそらくMySQLエラーが原因です-接続またはクエリのいずれかです。if($conn)またはをチェックしif($result)ます。

于 2013-07-29T22:24:28.020 に答える
1

あなたはまだ結果を取得する必要があります...だからforeachの代わりに....do while...

  while ($row = $result->fetch()) {
  //your code here

    } 
于 2013-07-29T22:24:43.080 に答える
0

クエリではなく準備が必要な場合があります

     $result = $conn->prepare("SELECT name FROM mod_devs");

またはこれ

    $result->setFetchMode(PDO::FETCH_OBJ);
于 2013-07-29T22:25:10.010 に答える
0

エラーが見つかりました。私が書いた接続ではname=ertyありませんdbname=erty

お時間を割いて申し訳ありません:(

于 2013-07-29T22:30:02.753 に答える