下記の違いはなんでしょうか?
$sql = "SELECT * FROM user_data WHERE id=200"; $stmt = $pdo->query($sql); $rowData=$stmt->fetch(); echo $stmt['id'];//エラーがでる echo $rowData['id'];//正常出力される //↑変数に入れてから使わないとエラーがでると思われる $sql = "SELECT * FROM user_skill AS US WHERE US.user_id = ? "; $stmtSkills = $pdo->prepare($sql); $sample = $stmtSkills->execute([$rowData['id']]); echo $stmtSkills['skill'];//エラーが出る echo $sample['skill'];//エラーはでないが何も出力されない foreach ($stmtSkills as $test) { echo $test['skill'];//正常出力される } foreach ($sample as $test) { echo $test['skill'];//Warningエラーが出る } //↑こっちでは変数にいれると逆にerrorが出る
誤)$stmt->fetch();
↓
正)$rowData=$stmt->fetch();
誤)$sample = $stmtSkills->execute([$rowData['id']]);
↓
正)$stmtSkills->execute([$rowData['id']]);
覚えたものを別ページで実践しようとしていたのですが
なんだかよく分からなくなってきました。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/02 10:14