MySQLに格納したデータをPHPでJSONエンコードし[["a",2],["b",6],["c",10]]というような形にしたいと考えているのですが、上手く望んだ結果を出せずにいます。
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);
ユーザーごとにanswer1の答えa,b,cという形で保存しています。
php
lang
1$dbh=データベースに接続する記述 2$sql="select answer1, count(id) as count from answers group by answer1"; 3$sqli=mysqli_query ($dbh, $sql); 4 5$answer=""; 6while($sqll=mysqli_fetch_assoc($sqli)){ 7 $answer=$sqll; 8} 9 10$rows=array(); 11foreach($answer as $row){ 12 array_push($rows,array($row[answer1],(int)$row['count'])); 13}
ひとまずanswer1だけを試しています。
$rowをjsonエンコードすると冒頭で記した形にはなっているのですが、値が入っていない状態に…。わかりにくい説明で申し訳ありません。
お詳しい方、どうかご教授お願いいたします!
修正致しました!
記述間違いが多くて申し訳ないです...。
今現在の上記の状態で$rowをJSONエンコードしてvar_dumpしますと、
sting(10)"[[null,0]]"
sting(10)"[[null,0]],[[2,2]]"
と表示されます...
回答2件
あなたの回答
tips
プレビュー