Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Templates > Smarty
Smarty Forum d'entraide sur le moteur de templates Smarty. Avant de poster -> FAQ Smarty et Cours Smarty
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/06/2007, 14h07   #1
Membre chevronné
 
Inscription : juin 2004
Messages : 747
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2004
Messages : 747
Points : 741
Points : 741
Par défaut Utilisation des OPTGROUP

Bonjour,

J'aimerais inclure des OPTGROUP dans une balise <select>. J'ai vu dans la doc officielle que smarty les gérait si on lui insère des tableaux comme variables..

Je ne comprends pas ce que ça veut dire et où placer les labels des mes OPTGROUP. Quelqu'un aurait-il déjà utilisé les OPTGROUP avec Smarty et éventuellement pourrait poster un exemple.

Merci !
pc.bertineau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2007, 17h12   #2
Membre Expert
 
Avatar de eric.pommereau
 
Homme ERIC POMMEREAU
Ingénieur intégration
Inscription : décembre 2004
Messages : 683
Détails du profil
Informations personnelles :
Nom : Homme ERIC POMMEREAU
Âge : 38
Localisation : France

Informations professionnelles :
Activité : Ingénieur intégration
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2004
Messages : 683
Points : 1 294
Points : 1 294
Bonjour,

Très bonne question ...

Oui c'est possible, il faut être à l'aise avec les tabeaux associatifs...

L'idée est de passer un tableau avec autant de clé que d'optgroup et pour chaque optgroup autant de paire clé valeur que de d'éléments que tu veux (je sais pas si je suis bien clair)...

Un exemple vallant mieux qu'un long discours:

Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
	require_once('../../smarty/Smarty.class.php');
 
	$oSmarty = new Smarty();
 
	$aSmartyOptions = array();
 
	$aSmartyOptions['fruits'] = array(1 => 'Orange', 2 => 'Fraise', 3 => 'Cerise');
	$aSmartyOptions['voitures'] = array(4 => 'Peugeot', 5 => 'Ford', 6 => 'Nissan');
	$aSmartyOptions['animaux'] = array(7 => 'Lion', 8 => 'Elephant', 9 => 'Chien');
 
	$oSmarty->assign('SmartyOptions', $aSmartyOptions);
 
	$oSmarty->display('index.tpl');
?>

Code html :
1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "http://www.w3.org/TR/html4/loose.dtd">
 
<html>
<head>
<title></title>
</head>
<body>
	{html_options name=monSelect options=$SmartyOptions}
</body>
</html>

J'ai trouvé cette solution dans la doc smarty: http://smarty.php.net/manual/fr/lang...ml.options.php voir l'exemple Exemple 8-15.

Si l'utilisation de la fonction utilisateur Smarty 'html_options' ne te convient pas libre à toi de tout faire manuellement en utilisant la fonction 'section'.

Voilà.
eric.pommereau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 11h24   #3
Membre chevronné
 
Inscription : juin 2004
Messages : 747
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2004
Messages : 747
Points : 741
Points : 741
super!
Merci pour le lien aussi, l'exemple n'était dans ma doc pdf...
pc.bertineau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/06/2007, 16h10   #4
Membre chevronné
 
Inscription : juin 2004
Messages : 747
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2004
Messages : 747
Points : 741
Points : 741
Problème:

Les clés ne sont pas transformées en 'value' par Smarty..

http://developpez.net/forums/showthread.php?t=362107

Les values que Smarty assigne sont les clés numériques et non les clés 'textuelles' que j'aimerais utiliser..
pc.bertineau est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h05.


 
 
 
 
Partenaires

Hébergement Web