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 13/04/2011, 10h53   #1
Membre éclairé
 
Avatar de llaffont
 
Loïc Laffont
Inscription : juin 2007
Messages : 495
Détails du profil
Informations personnelles :
Nom : Loïc Laffont
Âge : 34
Localisation : France, Loire (Rhône Alpes)

Informations forums :
Inscription : juin 2007
Messages : 495
Points : 380
Points : 380
Par défaut Plusieurs submit dans un form, donc plusieurs action.

Salut,


J'ai encore une énorme lacune dans mes connaissance sur Symfony.
J'ai un formulaire qui fonctionne très bien il se sauvegarde et s'édite sans soucis. J'ai une action sur se formulaire qui permet d'historiser son contenu via une variable Bool actuellement c'est un checkbox.
J'aimerais que mon pied de form possède deux submit l'un pour faire une sauvegarde classique l'autre pour faire la sauvegarde en même temps que l'historisation.

j'ai donc dans mon template :

Code :
1
2
 <input type="submit" name= "save" value="Sauvegarder"  />
 <input type="submit" name="historiser" value="Archiver" />
dans mon action.class.php :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 protected function processForm(sfWebRequest $request, sfForm $form)
  {
    $form->bind(
		$request->getParameter($form->getName()),
		$request->getFiles($form->getName())
	);	
 
	if ($request->getPostParameter('historiser')){
		$form_param = $request->getParameter($form->getName());
		$form_param['archiver'] = true;
		$form->bind($form_param);
	}
 
 
 
    if ($form->isValid()){		
		$balade = $form->save();		
		//$this->redirect('balade_show', $balade);
    }
  }
J'obtiens :

Citation:
Unexpected extra form field named "archiver".
Encore un preuve que je ne sais pas ce que je fais

Pourriez-vous m'indiquer comment je dois faire pour poursuivre ?
__________________
En théorie tout devrait fonctionner...

La France a un incroyable talent : Son retard en technologie informatique
llaffont est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2011, 14h49   #2
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
hasParameter() devrait t'aider il me semble.
__________________
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 13/04/2011, 15h03   #3
Membre éclairé
 
Avatar de llaffont
 
Loïc Laffont
Inscription : juin 2007
Messages : 495
Détails du profil
Informations personnelles :
Nom : Loïc Laffont
Âge : 34
Localisation : France, Loire (Rhône Alpes)

Informations forums :
Inscription : juin 2007
Messages : 495
Points : 380
Points : 380
Merci je regarde ça !
Mais ayant besoin d'avancer je me suis orienté sur un lien lors de la vue show.
__________________
En théorie tout devrait fonctionner...

La France a un incroyable talent : Son retard en technologie informatique
llaffont est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2011, 18h28   #4
Membre chevronné
 
Homme
Développeur Web
Inscription : mars 2011
Messages : 399
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 399
Points : 662
Points : 662
"archiver" est bien le "name" de ta checkbox style
Code :
<input type="checkbox" name="archiver" />
?
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery.
Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels.
Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc...
Shikiryu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2011, 18h49   #5
Membre éclairé
 
Avatar de llaffont
 
Loïc Laffont
Inscription : juin 2007
Messages : 495
Détails du profil
Informations personnelles :
Nom : Loïc Laffont
Âge : 34
Localisation : France, Loire (Rhône Alpes)

Informations forums :
Inscription : juin 2007
Messages : 495
Points : 380
Points : 380
Vi !
Je viens de voir l'erreur ici présente :
Code :
<input type="submit" name="historiser" value="Archiver" />
est en fait
Code :
<input type="submit" name="archiver" value="Archiver" />
__________________
En théorie tout devrait fonctionner...

La France a un incroyable talent : Son retard en technologie informatique
llaffont 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 02h21.


 
 
 
 
Partenaires

Hébergement Web