| Auteur |
Sujet |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2199
dernière visite: 01.09.08
|
Bonjour à tous !
J'essaie désespérément de faire une boucle for avec smarty !!
J'ai trouvé :
- <!--[section name=$tt start=0 loop=$nbelem]--><!--[/section]-->
mais quand dedans je souhaite mettre un foreach, je me retrouve avec le premier qui se déroule bien puis les suivants qui ne renvoie que la dernière valeur du foreach...
- <!--[section name=$tt start=0 loop=$nbelem]-->
- <!--[foreach item='nom_produit' from=$nom_produit]-->
- <!--[$nom_produit]-->
- <!--[/foreach]-->
- <!--[/section]-->
serait-ce dans le foreach qu'il y a un problème??
Gilles ><>°
|
| 10.07.2006, 10:50 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Les sections :
- <!--[section name='nbelem' start=0 loop=$nbelem]--><!--[/section]-->
- <!--[$nbelem[nbelem].valeur]-->
- <!--[/section]-->
les foreach :
- <!--[foreach item='elem' from=$nbelem]-->
- <!--[$elem]--> ou <!--[$elem.valeur]-->
- <!--[/foreach]-->
Si tu as un sous-tableau... il te sera plus facile de l'assigner à une variable plus simple avant de tourner dedans...
- <!--[section name='nbelem' start=0 loop=$nbelem]--><!--[/section]-->
- <!--[assign var='montableau' value=$nbelem[nbelem].valeur]-->
-
- <!--[foreach item='item' from=$montableau]-->
- <!--[$item]--> ou item.valeur]-->
- <!--[/foreach]-->
-
- <!--[/section]-->
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 10.07.2006, 11:44 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2199
dernière visite: 01.09.08
|
Merci pour ce petit cours smarty !!!
Mais es-ce que je peux récupérer le numéro de l'itération ou je suis dans une boucle section ??
Gilles ><>°
|
| 10.07.2006, 12:00 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
|
| 10.07.2006, 12:02 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2199
dernière visite: 01.09.08
|
Chestnut a écrit :
j'avais déjà deux onglets dessus...
mais je n'arrive pas à y faire marcher quand même !
- <!--[section name='nbelem' start=0 loop=$nbelem]-->
- <!--[$nbelem[nbelem].valeur]--> //<<- ne renvoie rien... je comprend
- <!--[$nbelem.index]--> //<<- ne renvoie rien, je comprend pas !
- <!--[/section]-->
dans la doc ils disent:
- {section name=foo start=10 loop=20 step=2}
- {$smarty.section.foo.index}
- {/section}
en mettant le nom.index on récupère le numéro de l'itération... quels sont les changements appliqués par postnuke pour que celà ne marche pas ?
Gilles ><>°
|
| 10.07.2006, 12:10 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2199
dernière visite: 01.09.08
|
Ouah... pas simple...
- <!--[assign var='i' value=0]-->
- <!--[section name='nbelem' start=0 loop=$nbelem]-->
-
- <!--[assign var='i' value=$i|increment]-->
- <!--[$i]--> //valeur incrémentée de i a chaque boucle !
- <!--[/section]-->
j'ai du créer un plugin smarty...
modifier.increment.php:
- function smarty_modifier_increment($number, $alteration = 1)
- {
- return $number += $alteration;
- }
et voilà !!
Y'a peut-être une facon plus simple...
++
Gilles ><>°
|
| 10.07.2006, 17:24 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Bah... ouais...
- <!--[assign var='compteur' value='1']-->
- <!--[foreach blablabla]-->
- msdmlskdmqlskdmqlskd
-
- <!--[math equation="x+y" x=$compteur y=1 assign='compteur']-->
- <!--[/foreach]-->
Quelque chose comme ça... pas sûr des apostrophes.
Sinon regarder la partie "key" sur les liens donnés dans mon dernier message.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 10.07.2006, 17:34 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2199
dernière visite: 01.09.08
|
sympa ce petit "math" Le connaissait pas !
en fait, je pensais qu'avec les sections et l'attribut index, on pouvais récupérer la valeur de l'itération... c'est ce que j'ai cru en lisant les exemples... mais apparamment non !!
merci Chestnut !
a+
Gilles ><>°
|
| 10.07.2006, 17:38 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Ce serait plutôt un oui mon cher...
- <!--[foreach key='key' item='item' from=$item]-->
- <!--[$key]--> <!--[$item]-->
- <!--[/foreach]-->
A moins bien sûr que le tableau est descriptif ( array('xxx'=>'yyy') )...
Là tu auras le xxx...
Du moins, si je me souviens bien.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 10.07.2006, 17:42 |
|
 |
Chestnut
Grand Maître
enregistré depuis : mar. 2005
Messages : 1125
dernière visite: 13.06.08
|
Désolé... gourré de section... mais ça fonctionne pour les index. Comme dans l'exemple sur la page des sections.
Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
|
| 10.07.2006, 17:44 |
|
 |
Gilles
Grand Maître
enregistré depuis : jui. 2005
Messages : 2199
dernière visite: 01.09.08
|
Citation :
A moins bien sûr que le tableau est descriptif ( array('xxx'=>'yyy') )...
Là tu auras le xxx...
je comprend tout maintenant  il reprend l'itération des tableau... finalment, pour fair une boucle qui va de 0 à 4 c'est beaucoup de choses
Gilles ><>°
|
| 10.07.2006, 17:47 |
|
 |