亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 php 將 Json 數據解碼并打印到 html 表中

使用 php 將 Json 數據解碼并打印到 html 表中

PHP
三國紛爭 2022-09-12 12:45:48
我有以下編碼的json數組:function getMostActive($link) {    $query = "SELECT username AS staff, COUNT(*) As Total FROM vloer_action_logs WHERE task_type = 'job_status_change' AND accessed_time >= '2019-12-31' AND accessed_time <= '2020-01-06'Group by username ORDER BY 2 DESC";    $result = mysqli_query($link, $query);    if (!$result)        die(mysqli_error($link));    $jsonData = array();    while ($array = mysqli_fetch_array($result, MYSQLI_ASSOC)) {        $jsonData[] = $array;    }    return json_encode($jsonData);}我想在表格中打印此數據。已嘗試以下方法$getMostActive = json_decode(getMostActive($link),true);<?php foreach ($getMostActive as $key=>$value) { ?>    <tr>     <td class="dark"><?php echo $value['Floor'];?> </td>     <td class="end"><?php echo $value['Total'];?></td>    </tr>但它扔給我的錯誤:嘗試在 /var/www/html/用戶/報告/報告/報告中獲取非對象的屬性“樓層.php我怎么能解決這個問題。提前致謝
查看完整描述

3 回答

?
慕神8447489

TA貢獻1780條經驗 獲得超1個贊

正如許多人已經說過的那樣,您在 getMostActive() 函數的第一行中的查詢不會選擇任何名為“樓層”的字段。因此,在解碼 json 的那一刻,您將獲得一個類似于以下內容的數組:


[

  [

    "staff" => "name1",

    "Total" => 5

  ],

  [

    "staff" => "name2",

    "Total" => 3

  ]

  // [...]

]

沒有一個條目表示包含您要查找的“樓層”字段的單個行。


若要進行檢查,請將以下代碼暫時放在表的正前方


echo '<pre>';

var_dump($getMostActive);

,然后修復查詢。就我所看到的,其他一切都是正確的。


希望我能幫上什么忙。


查看完整回答
反對 回復 2022-09-12
?
慕森王

TA貢獻1777條經驗 獲得超3個贊

你有幾個錯誤。首先,您嘗試解碼的 JSON 必須是字符串。而且您在解碼時也缺少$。


以下是工作代碼:


<?php 


$getMostActive = '[{"Floor":"carpet","Total":"22"},{"Floor":"ceramic-tiles","Total":"13"},{"Floor":"hardwood","Total":"13"}]';


$getMostActive = json_decode($getMostActive,true);

?>


<table>

<?php

foreach ($getMostActive as $key=>$value) { 


?>

    <tr>

     <td class="dark"><?php echo $value['Floor'];?> </td>

     <td class="end"><?php echo $value['Total'];?></td>

    </tr>

<?php 

}

?>

</table>


查看完整回答
反對 回復 2022-09-12
?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

試試下面一個。


    $getMostActive = '[{"Floor":"carpet","Total":"22"},{"Floor":"ceramic-tiles","Total":"13"},{"Floor":"hardwood","Total":"13"}]';

$getMostActive = json_decode($getMostActive,true);

 foreach ($getMostActive as $key=>$value) { ?>

    <tr>

     <td class="dark"><?php echo $value['Floor'];?> </td>

     <td class="end"><?php echo $value['Total'];?></td>

    </tr>

 <?php } ?>

看起來您的 JSON 數據不正確,請檢查 .single quote


查看完整回答
反對 回復 2022-09-12
  • 3 回答
  • 0 關注
  • 193 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號