8796 sujets

Développement web côté serveur, CMS

j'ai un script qui fait appel a une fonction comme suite (ligne 122):

// ### Extract template bits
foreach($xml->array['template_set']['template_bit'] as $key => $value) {
$bits_array[$value['group_name']['VALUE']][$value['bit_name']['VALUE']] = $value['content']['VALUE']; //
}

cette fonction marche en php5 mais quand j'ai migré sur un autre hebergeur qui n'a pas php4 juste php5 j'ai l'erreur:

Invalid argument supplied for foreach() in /home/public_html/monsite.info/source/Admin-Panel/admin.templatefunctions.php on line 122

aider moi à resoudre ce probleme merci
Bonjour,

Je ne pense pas que le problème soit du à foreach.
Il me semble que tu fais la lecture d'un objet XML dans ta boucle.
C'est peut être de ce côté que la version de PHP de ton hébergeur n'est pas compatible.

Smiley cligne
mdisc a écrit :
Bonjour,

Je ne pense pas que le problème soit du à foreach.
Il me semble que tu fais la lecture d'un objet XML dans ta boucle.
C'est peut être de ce côté que la version de PHP de ton hébergeur n'est pas compatible.

Smiley cligne


alors comment dois je resoudre de probleme si c'est le cas??!!
Essais de faire un var_dump() de $xml->array['template_set']['template_bit'] avant ta boucle foreach pour t'assurer que tu lui passe bien un tableau. A priori vu l'erreur ce n'est pas le cas donc le problème est sans doute en amont.
Peut être mais on ne sait pas avec quoi tu crée ton objet.

D'autre part cette phrase est un non-sens :
samaoui a écrit :

cette fonction marche en php5 mais quand j'ai migré sur un autre hebergeur qui n'a pas php4 juste php5 j'ai l'erreur: