何らかの理由でCodeigniterでSQLのクエリが行数に基づいてオブジェクト配列の繰り返し複製を返しています。私のSQLクエリを直接phpMyAdminに入れれば、正しい結果が返されます。そして、コードは、私が正常に動作する別のコール関数とほぼ同じであると付け加えるべきです。Codeigniter SQL同じオブジェクトを繰り返し返す
私はとても長い間自分のコードを見つめただけで盲目になったのですか?
更新:私のSQL結果が既に間違っているため、私は自分のコードを$ queryの操作に含めていません。
結果
CI_DB_mysqli_result Object
(
[conn_id] => mysqli Object
(
// Information
(
)
//Information
)
[result_id] => mysqli_result Object
(
[current_field] => 0
[field_count] => 4
[lengths] =>
[num_rows] => 2
[type] => 0
)
[result_array] => Array
(
)
[result_object] => Array
(
[0] => stdClass Object
(
[id] => 1594
[user_id] => 102
)
[1] => stdClass Object
(
[id] => 1279
[user_id] => 102
)
)
[custom_result_object] => Array
(
)
[current_row] => 0
[num_rows] =>
[row_data] =>
)
1
CI_DB_mysqli_result Object
(
[conn_id] => mysqli Object
(
// Information
(
)
//Information
)
[result_id] => mysqli_result Object
(
[current_field] => 0
[field_count] => 4
[lengths] =>
[num_rows] => 2
[type] => 0
)
[result_array] => Array
(
)
[result_object] => Array
(
[0] => stdClass Object
(
[id] => 1594
[user_id] => 102
)
[1] => stdClass Object
(
[id] => 1279
[user_id] => 102
)
)
[custom_result_object] => Array
(
)
[current_row] => 0
[num_rows] =>
[row_data] =>
)
1
コード
function data($update_id) {
$query = $this->db->query('
SELECT *
FROM `list`
JOIN `tasks` ON list.id = tasks.list_id
WHERE (tasks.date < \' 2016-03-19 \' AND tasks.list_id = '$update_id')
ORDER BY `tasks`.`date` DESC
');
return $query;
}
そして、私は上記の結果を得ます。私のコードにはループもありません。ループがどこから来るのかわかりません...
私はあなたの助けに感謝します。
私はあなたが正しくあなたの結果を2回得るのではないと理解していますか? この場合、コントローラはこの機能を2回呼び出すか、2回呼び出されます。 – sintakonte
**どのように表示されているのですか?それは '$ query'のvar_dumpですか? – DFriend
コントローラは単に$ result = $ this-> mdl_lists-> data($ update_id)を使ってコントローラを呼び出します。単純にprint_r($ result) –