-1
whileループ内でjson-decodeを使用しています。 .jsonファイルにjsonコードを作成するたびに、以下のようになり、この.jsonファイルを読み取ることができませんでした。私はそれがこのようになりたいmysqlデータをjsonからPHPに
[{"0":"2","id":"2","1":"avss","productname":"avss","2":"2920","price":"2920","3":"xasx","textarea":"xasx","4":"e3.jpg","name":"e3.jpg","5":"uploads\/e3.jpg","imagepath":"uploads\/e3.jpg"}]
...
[
{
"id": 0,
"name": "Item 0",
"price": "$0"
},
{
"id": 1,
"name": "Item 1",
"price": "$1"
},
{
"id": 2,
"name": "Item 2",
"price": "$2"
},
{
"id": 3,
"name": "Item 3",
"price": "$3"
},
{
"id": 4,
"name": "Item 4",
"price": "$4"
},
{
"id": 5,
"name": "Item 5",
"price": "$5"
},
{
"id": 6,
"name": "Item 6",
"price": "$6"
}
]
コード:
global $connection;
$sql = "SELECT * FROM `forms`";
$mq = mysqli_query($connection,$sql);
while($row = mysqli_fetch_array($mq)){
echo '<div class="form-group"><img src="'.$row['imagepath'].'" alt="HTML5 Icon" style="width:250px;height:180px">  '.
$row['name']."".$row['price'].'</div>';
$emparray = array();
$emparray[] = $row;
$fp = fopen('tables/data.json', 'w');
$k= json_encode($emparray);
fwrite($fp,$k);
fclose($fp);
あなたのコードはどこですか? –
while($ row = mysqli_fetch_array($ mq)){'に'} 'がマッチするのはどこですか? – Barmar
ループ内で毎回 '$ emparray()'を空にしています。 **ループの前に**初期化し、**ループの内側で**配列に追加し、JSONに変換して**ループの後に**ファイルに書き込む必要があります。これは単純な論理です。 – Barmar