Je rencontre actuellement un problème pour afficher une valeur à l'aide d'une fonction.
J'ai testé la requête SQL via PhpMyAdmin, et elle est bonne.
Voici le code qui ne fonctionne pas
// On récupére toutes les sous-catégories liées à une catégorie donnée
$c = new Categorie($db);
foreach($c->getRecupererLesSousCategories($categorie) as $categories){
foreach($categories as $cle=>$sous_categorie){
echo $sous_categorie."<br />";
// On compte le nombre de photos dans une sous-catégorie donnée
$p = new Photo($db);
foreach($p->getCompterLeNombreDePhotos($sous_categorie) as $photos){
foreach($photos as $cle=>$nbPhotos){
echo $nbPhotos;
}
}
}
}
La première valeur s'affiche (c'est-à-dire la fonction getRecupererLesSousCategories).Pour afficher le nombre de photos, ça ne fonctionne pas.
J'ai essayé en mode debug de changer "echo $nbPhotos;" en "echo 'test';", mais rien ne s'affiche aussi.
Que peut-il se passer au point que je ne peux rien afficher ?
J'ai même essayé de mettre le 2ème foreach en-dehors du premier pour voir si tout serait venu de là, mais encore une fois rien ne s'affiche.
Pour ce qui est de mon modèle
private $compterLeNombreDePhotos_req;
private $compterLeNombreDePhotos;
public function __construct($db){
// SELECT
$this->compterLeNombreDePhotos_req = $db->prepare("select count(*) from photo where nom_sousCateg = :sous_categorie");
}
/* On récupére la dernière photo d'une sous-catégorie donnée */
public function getCompterLeNombreDePhotos($sous_categorie){
$params = array(':sous_categorie'=>$sous_categorie);
$this->compterLeNombreDePhotos_req->execute($params);
$this->compterLeNombreDePhotos = $this->compterLeNombreDePhotos_req->fetchAll(PDO::FETCH_ASSOC);
return $this->compterLeNombreDePhotos;
}
Je vous en remercie d'avance les amis.