Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > symfony
symfony Forum d'entraide sur le framework PHP symfony. Avant de poster : cours symfony et FAQ symfony
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 25/11/2010, 19h02   #1
Membre régulier
 
Inscription : janvier 2008
Messages : 212
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 212
Points : 75
Points : 75
Envoyer un message via Skype™ à mantex
Par défaut Liaison champs formulaire

Bonsoir tout les monde..

Le casse tête du jour.

J' ai formulaire qui doit passe 3 champs (3 id) en cachette sans être saisie par celui qui rempli le formulaire.

Ces champs sont bien sur variable, ça serait trop simple !

Aprés avoir tenté les option sur des widget imputhidden, j' ai pensé faire comme ceci.

Juste avant d' instancier mon formulaire, je crée un objet regroupant les champs (ici a titre d' exemple 1, 2, 3) à passer intuitivement.

Puis je passe cette objet dans mon formulaire pour qu' il puisse le lie aux autres champs saisies.

Code :
1
2
3
4
5
6
 
$this->evaluation = new Evaluation();
    $this->evaluation->setCustomerId(2);
    $this->evaluation->setContributorId(1);
    $this->evaluation->setInvitationId(3);
    $this->form = new EvaluationForm($this->evaluation);

Résultat : pas d' erreur mais mes 3 champs sont a 0.

Quelqu' un a une idée ?
mantex est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2010, 18h28   #2
Membre régulier
 
Inscription : janvier 2008
Messages : 212
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 212
Points : 75
Points : 75
Envoyer un message via Skype™ à mantex
Et bé il fallait juste surchargé les champs en sfWidgetFormInputHidden et le tour est joué.


Code :
1
2
3
 
$this->widgetSchema['contributor_id'] = new sfWidgetFormInputHidden(array('is_hidden' => 'true'));
    $this->widgetSchema['invitation_id'] = new sfWidgetFormInputHidden (array('is_hidden' => 'true'));
mantex est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 23h43   #3
Modérateur
 
Avatar de Michel Rotta
 
Homme Michel Rotta
Responsable d'exploitation informatique
Inscription : septembre 2005
Messages : 4 913
Détails du profil
Informations personnelles :
Nom : Homme Michel Rotta
Âge : 49
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Responsable d'exploitation informatique
Secteur : Distribution

Informations forums :
Inscription : septembre 2005
Messages : 4 913
Points : 7 505
Points : 7 505
Si tu imagines faire passer ces champs en cachette, alors qu'un simple "afficher la source de la page" permet de les visualiser et qu'un bête firebug permet d'en modifier le contenu, a mon avis, tu risques une sévère discutions.

Il n'est pas possible de passer des données par un formulaire sans que l'utilisateur aie la possibilité de les intercepter, et, souvent, de les modifier. Si tu veux passer des données sans ce risque, passe donc par le holder de la session.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
  • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
  • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
  • Une discussion est terminée ? Alors le bouton est votre ami !
Michel Rotta est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2010, 09h37   #4
Membre régulier
 
Inscription : janvier 2008
Messages : 212
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 212
Points : 75
Points : 75
Envoyer un message via Skype™ à mantex
Oui je sais bien, déja l' idée c' était de passer ces champs automatiquement.

j' ai cherché un moment comment passé un champs hidden avec une valeur dynamique.

Les utilisateurs du formulaire ne sont pas loggués à l' appli et sont authentifiés par un token dans l' url.

Bonne journée.
mantex est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2010, 22h40   #5
Modérateur
 
Avatar de Michel Rotta
 
Homme Michel Rotta
Responsable d'exploitation informatique
Inscription : septembre 2005
Messages : 4 913
Détails du profil
Informations personnelles :
Nom : Homme Michel Rotta
Âge : 49
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Responsable d'exploitation informatique
Secteur : Distribution

Informations forums :
Inscription : septembre 2005
Messages : 4 913
Points : 7 505
Points : 7 505
Pourquoi ne pas utiliser les session php, plus sur ?

Dans tous les cas, tu dois bien garder une trace du token dans une table, rien n'empêche d'y stocker des données temporaires.

Mais utiliser les procédés de bases de php que symfony sait gérer, me semble une bonne idée.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
  • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
  • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
  • Une discussion est terminée ? Alors le bouton est votre ami !
Michel Rotta est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h39.


 
 
 
 
Partenaires

Hébergement Web