|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mai 2011 Messages : 3 ![]() |
Bonjour,
J'ai actuellement un soucis avec un formulaire sfWidgetFormSelectRadio. Je voudrai faire en sorte que le label associé à chaque radio-button soit en fait une URL. Actuellement je passe à mon formulaire un tableau du type suivant : Code :
Le soucis , c'est qu'à l'affichage le lien URL n'est pas interprété. Mon formulaire s'affiche bien , mais le string est affiché complètement (avec les balise <a href=""></a>"). Est ce quelqu'un verrait comment ressoudre ce problème ? Merci d'avance. |
||
|
|
00
|
|
|
#2 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Il n'y a pas de solution simple.
Ta liste est rendue par l'objet sfWidgetFormSelectRadio et plus particulièrement la méthode formatChoice(). Le problème est que cette méthode escape ton code. Il faudrait donc faire un objet enfant de sfWidgetFormSelectRadio avec une méthode formatChoice qui, soit ne ferait pas d'escape, soit génèrerait la balise <a> à partir d'un url_for() (plus propre). Tu peux créer cet objet dans un dossier (à créer) lib/widget/ dans lequel tu peux créer un objet du genre sfWidgetFormSelectRadioUrl.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
30
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 3 ![]() |
Oui je me suis résolu à faire un widget qui hérite de la classe sfWidgetFormSelectRadio et j'ai enlevé le self::escapeOnce dans la méthode formatChoices.
Résultat ça marche parfaitement. Merci pour ton aide |
|
|
00
|
|
|
#4 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Attention, le fait de supprimer le self::escapeOnce rend ton code sensible à une attaque. Il est indispensable que tu t'assures que les données affichées soient, soit entrée par et uniquement par des personnes parfaitement sur, soit qu'il soit échapé par toi par ailleurs.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 3 ![]() |
Je récupère les données à partir d'une API donc normalement c'est bon , non ?
Sinon je me pencherai sur ta seconde proposition , faire en sorte que le widget génère les balises <a>. |
|
|
00
|
|
|
#6 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Je ne suis pas sur de ce que tu veux dire par "Je récupère les données à partir d'une API". Le danger étant que tu ne peux jamais être sur des données qui arrivent, même si c'est toi qui a écris le prg en face, rien ne dit que quelqu'un ne ce fait pas passer pour lui...
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
Copyright © 2000-2012 - www.developpez.com