+33 3 83 56 65 26 +33 6 87 42 95 30 Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. Lun-Ven : 9.00 à 17.00
Extensions Composants

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 :
Code:
$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 :
Code:
$metmpl->prepareContactHTML('contact',$obj->contact,$rows1,$rows3,$resultat2);

Enfin, dans template.class.php, on affiche les données de résultat2 :
Code:
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 :
Code:
$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
Code:
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é.
Modérateurs: lavstephtramber91Scottuxserge
Temps de génération de la page : 0.275 secondes

News extensions

News Communautés

Livres-Revues

News sécurité