1

mysqlは初めてで、PDOは非常に新しいです-しかし、たくさんのチュートリアルで学ぼうとしています。

ユーザーIDに対応するデータベースのエントリを取得し、それを使用してプロファイルページにユーザー名などをエコーアウトしようとしています。

$stmt = $conn->query('SELECT * FROM clients WHERE id = 42');
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);

    // Content here...

echo $results['firstname'];

これにより、未定義であるというエラーが発生します。ここで何が間違っているのでしょうか。

このチュートリアルの作業:http ://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers

4

1 に答える 1

2

次のように変更してみてください。

$results = $stmt->fetch(PDO::FETCH_ASSOC)

行のある配列ではなく、データベースから単一の行を要求しているため

PDOStatement::fetchAll — Returns an array containing all of the result set rows
PDOStatement::fetch — Fetches the next row from a result set
于 2012-08-26T00:42:59.893 に答える