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 :

Préremplir un champ lors de l'édition d'un form déjà existant [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut Préremplir un champ lors de l'édition d'un form déjà existant
    Bonjour,

    J'aimerais que lorsque l'on édite, une vue de mon portail les champs dates non définie soit mis à la date du jour afin de faciliter la saisie.

    Je donne un peu plus de détail :

    Mon formulaire comprends des balises select permettant de renseigner une plage calendaire.
    Lorsque l'on édite ce formulaire pour la première fois les dates ne sont pas définies dans la base donc les champs sont nuls.

    En clair est-il possible de faire un truc du genre lors de l'édition ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!getDate){
     setDate(now());
    }

  2. #2
    Membre averti
    Homme Profil pro
    Software developper
    Inscrit en
    Juillet 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Software developper

    Informations forums :
    Inscription : Juillet 2008
    Messages : 43
    Par défaut
    si tu veux il y a la fonction $this->setDefault().

    http://www.symfony-project.org/forms...-Form-Creation

  3. #3
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut
    Merci je me suis débrouillé autrement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    public function save(Doctrine_Connection $conn = null){
      if ($this->isNew()){
        $tempCreated = $this->getCreatedAt();
        if(empty($tempCreated)){
          $this->setCreatedAt(date('Y-m-d H:i:s'));
          $timeStampHappel = strtotime ($this->getHappel());
          $this->setHdeb($this->arrondiAuQuardHeure($timeStampHappel));
          $this->setHfin($this->arrondiAuQuardHeure($timeStampHappel));
        }
      }
      $this->setTpasse($this->caculTempsPasse($this->getHdeb(), $this->getHfin()));
      $this->setUpdatedAt(date('Y-m-d H:i:s'));
      return parent::save($conn);
    }
     
    public function arrondiAuQuardHeure($timeStamp) { //Retourne l'heure arrondie au quart d'heure près inférieur.
      echo $timeStamp;
      $now = getdate($timeStamp);
      $minutes = $now['minutes'] - $now['minutes']%15;
      $newTime = $now['year'].'-'.$now['mon'].'-'.$now['mday'].' '.$now['hours'].':'.$minutes;
      return  $newTime;
    }
    De cette façon le champ est initialisé lors de la création de l'entrée en base.

    J'avais l'impression que faire cette opération depuis le configure n'était pas "propre" mais je me trompe surement.

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Si tu veux une date de création et une date d'édition, utilise le behavior doctrine timestampable qui fait tout, tout seul.

  5. #5
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut
    Citation Envoyé par Michel Rotta Voir le message
    Si tu veux une date de création et une date d'édition, utilise le behavior doctrine timestampable qui fait tout, tout seul.
    Non ce n'est pas le but, d'ailleurs je l'utilise déjà "setCreatedAt()".

    Mon but était sur d'autre champs TimeStamp, dans l'exemple Hdeb et Hfin qui sont deux périodes definie par l'utilisateur du débute forcément après la date d'appel getHappel.
    La date de création de l'entrée ne correspond pas forcément à l'heure d'appel.
    Merci quand même.

    Sinon au niveau déclaration "d'interactivité" peut-on vraiment le faire au niveau du configure ?

  6. #6
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Je ne vois pas trop ce que tu veux dire par "le faire dans configure".

    A priori sur quelque chose qui dépend du modèle (vrai pour toutes les méthodes de création possible), la méthode save du modèle est un bon endroit (c'est là que j'aurais mis ce code).

    Mais qu'entends tu par "au niveau du configure " ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. JTable et JComboBox : problème lors de l'édition
    Par Claythest dans le forum Composants
    Réponses: 13
    Dernier message: 25/04/2006, 18h18
  2. Réponses: 2
    Dernier message: 30/03/2006, 19h50
  3. Réponses: 1
    Dernier message: 05/12/2005, 23h24
  4. Réponses: 6
    Dernier message: 17/06/2005, 14h40

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