現在ドットインストールの「PHPで作る投票システム」を参考にしながらアンケートシステムの作成を行っているのですが、投票結果を表示しよう(1)~(2)で行うMySQLからデータを取り出して二次元配列にする部分の記述が上手くいかず、悩んでいます。
MySQL アンケートの結果を格納するテーブルの構成
lang
1create table answers( 2 id int not null auto increment primary key; 3 answer1 varchar(10) 4 answer2 varchar(10) 5 answer3 varchar(10) 6);
ユーザーごとに3問それぞれの答えを保存していきます。
php
lang
1$dbh=データベースに接続する記述 2$sql="select answers, count(id) as count from answers group by answer1"; 3 4$rows=array(); 5foreach($dbh->query($sql)as $row){ 6 array_push($rows,array($row[answer1],(int)$row['count'])); 7}
ひとまずanswer1だけをを[["1",1],["2",3]]…というような二次元配列にしようと試していたのですが、Invaid argment supplied for foreach() in…というエラーが出てしまいうまくいきません。
DBへの接続はできているのは確認しました。
どこか間違っているのかと色々考え、他の記述も試したのですがわかりませんでした。どうしたらMySQLからアンケートの答えを取り出して二次元配列にできるのでしょうか。
わかりにくい内容でしたら申し訳ありません、どうかご教授お願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/06/10 12:49