IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Ajouter une valeur aprés la soumission d'un form


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 8
    Par défaut [résolu] Ajouter une valeur aprés la soumission d'un form
    Bonjour à tous,

    J'ai cherché toute la journée sans trouver la solution à mon problème que voici :

    J'ai un formulaire d'article (fait avec le admin generator).
    Avec les champs suivants (simplifié) :

    - titre
    - corps
    - etat (liste avec brouillons / validé / publié )

    Une fois soumis si l'état est publié, je veux mettre à jour la "date de publication" qui n'apparait pas dans ce formulaire.

    Donc je cherche à ajouter ma date avec les valeurs soumises pour qu'à la sauvegarde du formulaire la date soit enregistrée.

    J'espère être clair. Je veux mettre à jour un champ qui n'est pas dans le formulaire.

    J'ai essayé de faire ça dans executeCreate (que je redéfini) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // Je récupère les valeurs du post
    $values = $request->getParameter($this->form->getName());
    // J'ajoute ma valeur
    $values['publie_le'] = date("Y-m-d H:i:s");
    J'espérais le le processForm prendrait en compte cette valeur mais ce n'est pas le cas.

    Est-ce que j'utilise la bonne méthode ? (surement pas puisque ça ne marche pas).

    Je précise que je n'ai pas de message d'erreur, ma date reste juste à NULL.


    Avez-vous une idée ?

  2. #2
    Membre éprouvé

    Homme Profil pro
    Software Engineer
    Inscrit en
    Août 2004
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 173
    Par défaut
    Tu as plusieurs solutions pour faire ça.
    La plus propre est normalement de faire ça dans le modèle, mais ne sachant pas si utilises propel ou doctrine je ne peux pas répondre.

    Sinon tu peux surcharger la méthode doSave dans ton formulaire, cela ressemblerait à quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    protected function doSave ($con = null)
    {
       $object = $this->getObject();
       // Opérations sur object pour lui ajouter la date de publication, varie selon si  //tu utilises propel ou doctrine
      parent::doSave($con);
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 8
    Par défaut
    Un grand merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    protected function doSave($con = null)
      {
        $object = $this->getObject();
     
        if($this->getValue('etat_id') == 4 && $this->getObject()->getEtatId() != 4)
          $object->setPublieLe(date("Y-m-d H:i:s"));
     
        $this->resizeImage($this->getValue('image'));
     
        parent::doSave($con);
      }



    (J'utilise doctrine.)

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/06/2014, 13h02
  2. ajouter une valeur dans une combobox
    Par decour dans le forum Access
    Réponses: 1
    Dernier message: 17/10/2005, 10h58
  3. Ajouter une column apres une autre
    Par alex57 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 19/09/2005, 13h53
  4. Popup ajoutant une valeur a un champ
    Par kalan dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 05/09/2005, 15h39
  5. une valeur apres la virguile
    Par adgabd dans le forum Bases de données
    Réponses: 1
    Dernier message: 07/02/2005, 11h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo