Problème pour afficher une valeur

Petit nouveau ! | 4 Messages

02 juin 2010, 17:10

Bonjour à tous.

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.

Petit nouveau ! | 4 Messages

07 juin 2010, 15:44

Le problème a été résolu : c'était dû à la requêtes SQL