× Extensions Composants

Question Problème de foreach

Plus d'informations
05 Fév 2010 10:30 - 05 Fév 2010 11:17 #1 par atrix7
Problème de foreach a été créé par atrix7
Bonjour,

j'utilise le composant misterestate.

Dans ce dernier, on peut afficher des données de la base Mysql sur le site.

J'ai un fichier misterestate.php, dans celui-ci on appel misteresatet_html.php :
 
$sql4 = 'SELECT * FROM #__misterestate where id = 6';
$db->setQuery( $sql4 );
 
$resultat2 = $db->loadObjectList();
 
HTML_misterestate::showObject($act,$task,$obj,$map24,$gmap,$params,$rows1,$rows3,$resultat2);


Dans misteresatet_html.php, on appel template.class.php :
		$metmpl->prepareContactHTML('contact',$obj->contact,$rows1,$rows3,$resultat2);
 

Enfin, dans template.class.php, on affiche les données de résultat2 :
  			foreach($resultat2 as $row) {
$this->$key .= "du: " . $row->title . " au: " . $row->date_fin . " nombre de jours: " . $row->nombre_jour . "<br />";
 
}


Le foreach marche parfaitement, les données s'affichent correctement, mon problème est que j'ai besoin d'afficher les résultats d'une 2eme requetes. Je n'arrive pas à afficher ces résultats, j'ai cette erreur :

Warning: Invalid argument supplied for foreach() in /homez.183/formatioz/www/components/com_misterestate/gui/templates/template.class.php on line 438

On ne peut pas passer en paramètres plusieurs :
"$resultat2 = $db->loadObjectList();"
en changeant le nom de la variable?

Merci et n'hésiter pas à poser des questions si vous n'avez pas compris.




edit :

J'ai essayé ca :

misterestate.php :
        $sql4 = 'SELECT trade_size FROM #__misterestate where id = 6';
$db->setQuery( $sql4 );
$resultat2 = $db->loadObjectList();
 
if($resultat2->trade_size == ""){
$sql5 = 'SELECT * FROM #__date_formation where id = 6';
$db->setQuery( $sql5 );
$resultat2 = $db->loadObjectList();
}
else{
$sql6 = 'SELECT * FROM #__misterestate where id = 6';
$db->setQuery( $sql6 );
$resultat2 = $db->loadObjectList();
 
}
HTML_misterestate::showObject($act,$task,$obj,$map24,$gmap,$params,$rows1,$rows3,$resultat2);

template.class.php
  	foreach($resultat2 as $row) {
 
if($row->trade_size!=""){
$this->$key .= "du: " . $row->homes . " au: " . $row->homes_size  . " nombre de jours: " . $row->pp_size . "<br />";
 
}else{
$this->$key .= "du: " . $row->date_debut . " au: " . $row->date_fin . " nombre de jours: " . $row->nombre_jour . "<br />";
}
 
}
Dernière édition: 05 Fév 2010 11:17 par atrix7.
Le sujet a été verrouillé.
Plus d'informations
05 Fév 2010 11:16 #2 par atrix7
Réponse de atrix7 sur le sujet Re:Problème de foreach
J'ai trouvé une solution
Le sujet a été verrouillé.
  • Vous ne pouvez pas: Créer un nouveau sujet.
  • Vous ne pouvez pas: Répondre au sujet.
  • Vous ne pouvez pas: Éditer votre message.
Modérateurs: lavstephtramber91Scottuxserge
Temps de génération de la page : 0.348 secondes