Проблемът във вашия въпрос е, както виждам, че се опитвате да преброите немасив или неизброим обект.
Мисли
- В целия си код не сте написали
count()
което изглежда причинява проблема, защо? - Защо трябва да броите
$q->row();
когато сами ограничавате резултата до 1// as you said the problem is here $row = $q->row();
Възможно решение
Когато използвате row()
т.е. $q->row();
получавате не- изброим обект
,
// row() dummy data
stdClass Object
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
но когато използвате result()
т.е. $q->result();
, това ще доведе до масив от обекти или в случай на result_array()
, масив от масиви, дори ако ги ограничите до един.
// 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
)
)
И двете вече са масив и следователно могат да бъдат преброени.
Надявам се да ви помогне.