Problem w Twoim pytaniu polega na tym, że próbujesz policzyć obiekt, który nie jest tablicą lub nie jest policzalny.
Myśli
- W całym kodzie nie napisałeś
count()co wydaje się być przyczyną problemu, dlaczego? - Dlaczego musisz liczyć
$q->row();gdy sam ograniczasz wynik do 1// as you said the problem is here $row = $q->row();
Możliwe rozwiązanie
Gdy używasz row() tj. $q->row(); otrzymasz nie- policzalny obiekt
,
// row() dummy data
stdClass Object
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
ale kiedy używasz result() tj. $q->result(); , spowoduje to powstanie tablicy obiektów lub w przypadku result_array() , tablica tablic, nawet jeśli ograniczysz je do jednej.
// result() dummy data -- same as result_object()
(
[0] => stdClass Object
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
)
// result_array() dummy data
Array
(
[0] => Array
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
)
Oba są teraz tablicą, a zatem są policzalne.
Mam nadzieję, że ci to pomoże.