ユーザーが選択した日付に基づいて、データベースから数値データを取得しています。なんらかの理由で、関数を選択して今日のデータをすべて取得すると (何もありません)、それでも null 値の配列が形成されます。
問題は select_sum() または where() 関数のいずれかにあると思います。これが私のCIクエリです:
$this->db
->select_sum('column1')
->select_sum('column2')
->select_sum('column3')
->where('created_at >=', date('Y-m-d'));
$query = $this->db->get('table_name');
そして、選択したすべてのデータをページ全体で使用する配列にプルする foreach ループを次に示します。
$popular_items_array = array();
foreach ($query->result() as $key => $row)
{
if ($row == NULL) {
echo "Error populating table.";
} else {
$popular_items_array = $row;
}
}
データを確認するために、次のことを行いました。
echo json_encode($popular_items_array);
これは次のことを示しています。
{"column1":null,"column2":null,"column3":null}
別の時間枠 (設定された日付までにデータが実際に存在する場所) を選択すると、同じ JSON エコーが既存のデータを表示します。私が理解していないのは、なぜクエリが何かを返すのですか? 失敗ばかりじゃないのはなぜ?そして、この問題をキャッチするチェック/ループを実行し、その日付にデータが存在しないことをユーザーに知らせるエラーメッセージを表示するにはどうすればよいですか?