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 :

formulaire d'insertion sur plusieurs tables à fois


Sujet :

Symfony PHP

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2009
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 77
    Points : 69
    Points
    69
    Par défaut formulaire d'insertion sur plusieurs tables à fois
    Bonjour a tous,

    dans mon projet que je suis en cours de realisation , j'ai une formulaire de demande des clients qui contient des champs du table Demande (id_demande , daterealisation , id_client , prix , depart , arrive , horraire_min)

    depart , arrive , id_client sont de clé étrangères

    en fait j'ai arrivé a réaliser ce formulaire dans le modél
    lib/forms/DemandeForm.class.php
    où j'ai mis tt les champs formulaire (j'ai modifier le formulaire généré automatiquement)
    le probleme je connais pas comment recuperer les données ecrites par le client
    RQ: l'affichage du formulaire se fait dans
    apps\frontend\modules\demande\templates\newSuccess.php
    l'action associe au template new doit recuperer tt les données et inserrer le demande dans la table demande et le point depart et arrive dans la table point

    remarque : la table demande contient 3 clé etrangére :
    depart: identifiant d'une point de la table point (les autres données du point codepostal , ville , pays ... ) sont tout indiqué dans le formulaire cité en haut
    arrive: de meme pour depart
    id_client : identifiant du client : recuperer de session du client qui vient de deposer son demande.

    aidez moi svp

  2. #2
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    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
    Points : 8 486
    Points
    8 486
    Par défaut
    Et si tu parts de ta table de base.

    Que tu bâti dans ton modèle une requête avec les champs des deux autres tables nécessaires.

    Que tu parts du form de ta table de base. Que tu lui rajoute les widget et validator pour les champs des deux tables liées que c'est que tu veux intégrer.

    Que tu lie le tous à ta requête de base.

    Ca devrait même se faire tous seul, ou presque.

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2009
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 77
    Points : 69
    Points
    69
    Par défaut
    merci mimi

    en fait j'ai trouvé la solution (soit disant à 80%)
    le probleme etais dans la definition des relation dans mon schema.yml
    j'ai modifier le fichier DemandeForm.class.php dans la fonction configure()
    et j'ai declaré deux objet de type point
    tt va bien et le formulaire d'ajout de deux point apparait dans le formulaire d'jout du demande
    mais lle problemes persistant : j'ai lis ce chapitre et il me parait qu'il faut faire le liaison entre le deux objet point et que je vient de le creer et leurs attribut dans le formulaire d'joutn den demande
    voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    class DemandeForm extends BaseDemandeForm
    {
      public function configure()
      {
        $subForm = new sfForm();
        $point1= new Point(); 
    	$point2= new Point(); 
        $formp1 = new PointForm($point1);
    	$formp2 = new PointForm($point2);
        $subForm->embedForm('Point de depart', $formp1);
    	$subForm->embedForm('Point d\'arrive', $formp2);
        $this->embedForm('', $subForm);
      }
    }
    dans le modéle demande j'ai
    lib\form\doctrine\baseBaseDemandeForm.class.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Point_depart_id'  => new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('Point_2'), 'add_empty' => false)),
          'Point_arrivee_id' => new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('Point'), 'add_empty' => false)),
    aidez moi SVP

  4. #4
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    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
    Points : 8 486
    Points
    8 486
    Par défaut
    Et où est le problème remonté par symfony ?

  5. #5
    Membre du Club
    Inscrit en
    Novembre 2009
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 77
    Points : 69
    Points
    69
    Par défaut
    Resolu
    ici

Discussions similaires

  1. [MySQL] Formulaire multiples et INSERT sur plusieures tables avec même ID
    Par mfredok dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 25/11/2010, 13h59
  2. INSERT sur plusieurs tables
    Par ROMS77 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 10/06/2009, 14h53
  3. Requête INSERT sur plusieurs tables
    Par sircus dans le forum Langage SQL
    Réponses: 5
    Dernier message: 20/01/2009, 08h30
  4. INSERT sur plusieurs tables.
    Par Nethervoid21 dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 18/11/2006, 11h22
  5. INSERT sur plusieurs tables
    Par juniorAl dans le forum Langage SQL
    Réponses: 4
    Dernier message: 30/03/2005, 18h59

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