Le problème dans votre question est que je vois que vous essayez de compter un objet non-tableau ou non dénombrable.
Réflexions
- Dans tout votre code, vous n'avez pas écrit le
count()
qui semble être à l'origine du problème, pourquoi ? - Pourquoi avez-vous besoin de compter
$q->row();
lorsque vous limitez vous-même le résultat à 1// as you said the problem is here $row = $q->row();
Solution possible
Lorsque vous utilisez row()
c'est-à-dire $q->row();
vous obtenez un non- objet dénombrable
,
// row() dummy data
stdClass Object
(
[id] => 15
[event_id] => 3
[event_image] => c1fa8a5d5505047251fd928aa312b16c.jpg
)
mais lorsque vous utilisez result()
c'est-à-dire $q->result();
, il en résultera un tableau d'objets ou dans le cas de result_array()
, un tableau de tableaux, même si vous les limitez à un seul.
// 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
)
)
Les deux sont maintenant un tableau et donc dénombrables.
J'espère que cela vous aidera.