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 :

Insertion dans 2 tables [2.x]


Sujet :

Symfony PHP

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 44
    Points : 25
    Points
    25
    Par défaut Insertion dans 2 tables
    Bonjour les ami(e)s , veuillez m'aider svp, je suis totalement bloquée.
    En fait j'ai 2 tables : dossierfonctionnaire et coordonnées. la table dossierfonctionnaire est liée avec la table coordonnées par : id_coordonnées.
    Ce qui est demandé : Lorsque j'insère une ligne dans "dossierfonctionnaire" avec un id, il faut que le mm id se crée dans la table "cordonnées" et que je puisse accéder à cette table pour y insérer les informations.

    dossierfonctionnaire.php:
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    /**
     * DossierFonctionnaire
     *
     * @ORM\Table(name="dossier_fonctionnaire", indexes={@ORM\Index(name="FK_REFERENCE_8", columns={"ID_NATIONALITE"}), @ORM\Index(name="FK_REFERENCE_9", columns={"ID_ETAT_MARITAL"})}))
     * @ORM\Entity(repositoryClass="Functional\ModelPersistBundle\Entity\Repository\DossierFonctionnaireRepository")
     */
    class DossierFonctionnaire
    {
        /**
         * @var integer
         *
         * @ORM\Column(name="ID_DOSSIER_FONCTIONNAIRE", type="integer", nullable=false)
         * @ORM\Id
         * @ORM\GeneratedValue(strategy="IDENTITY")
         */
        private $idDossierFonctionnaire;
        /**
         * @var string
         *
         * @ORM\Column(name="NOM", type="string", length=255, nullable=true)
         */
        private $nom;
     
        /**
         * @var string
         *
         * @ORM\Column(name="PRENOM", type="string", length=255, nullable=true)
         */
        private $prenom;
     
        /**
         * @var string
         *
         * @ORM\Column(name="PPR", type="string", length=255, nullable=true)
         */
        private $ppr;
     
        /**
         * @var boolean
         *
         * @ORM\Column(name="SEXE", type="array", nullable=true)
         */
        private $sexe;
     
        /**
         * @var \DateTime
         *
         * @ORM\Column(name="DATE_NAISSANCE", type="date", nullable=true)
         */
        private $dateNaissance;
     
        /**
         * @var string
         *
         * @ORM\Column(name="NUM_PI", type="string", length=255, nullable=true)
         */
        private $numPi;
     
        /**
         * @var string
         *
         * @ORM\Column(name="NUM_PC", type="string", length=255, nullable=true)
         */
        private $numPc;
     
        /**
         * @var \Nationalite
         *
         * @ORM\ManyToOne(targetEntity="Nationalite", inversedBy="details")
         * @ORM\JoinColumns({
         *   @ORM\JoinColumn(name="ID_NATIONALITE", referencedColumnName="ID_NATIONALITE")
         * })
         */
        private $idNationalite;
     
        /**
         * @var \EtatMarital
         *
         * @ORM\ManyToOne(targetEntity="EtatMarital", inversedBy="details")
         * @ORM\JoinColumns({
         *   @ORM\JoinColumn(name="ID_ETAT_MARITAL", referencedColumnName="ID_ETAT_MARITAL")
         * })
         */
        private $idEtatMarital;
     
        /**
         * @var string
         *
         * @ORM\Column(name="PHOTO", type="text", nullable=true)
         */
        private $photo;
     
        /**
         * @var boolean
         *
         * @ORM\Column(name="SUPP", type="boolean", nullable=true)
         */
        private $supp;
        /**
         * @var \Coordonnees
         *
         * @ORM\ManyToOne(targetEntity="Coordonnees")
         * @ORM\JoinColumns({
         *   @ORM\JoinColumn(name="ID_COORDONNEES", referencedColumnName="ID_COORDONNEES")
         * })
         */
        private $coordonnees; 
    //Getter & setter
    }
    et la table coordonnees.php

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    /**
     * Coordonnees
     * @ORM\Table(name="coordonnees")
     * @ORM\Entity(repositoryClass="Functional\ModelPersistBundle\Entity\Repository\CoordonneesRepository")
     */
     
    class Coordonnees
    {
    	/**
    	 * @var integer
    	 *
    	 * @ORM\Column(name="ID_COORDONNEES", type="integer", nullable=false)
    	 * @ORM\Id
    	 * @ORM\GeneratedValue(strategy="IDENTITY")
    	 */
    	private $idCoordonnees;
     
    	/**
    	 * @var string
    	 *
    	 * @ORM\Column(name="ADRESSE_1", type="string", length=255, nullable=true)
    	 */
    	private $adresse1;
    	/**
    	 * @var string
    	 *
    	 * @ORM\Column(name="ADRESSE_2", type="string", length=255, nullable=true)
    	 */
    	private $adresse2;
     
    	/**
    	 * @var integer
    	 *
    	 * @ORM\Column(name="TEL_DOMICILE", type="integer", nullable=true)
    	 */
    	private $telDomicile;
     
    	/**
    	 * @var integer
    	 *
    	 * @ORM\Column(name="TEL_PORTABLE", type="integer", nullable=true)
    	 */
    	private $telPortable;
     
    	/**
    	 * @var string
    	 *
    	 * @ORM\Column(name="EMAIL", type="string", length=255, nullable=true)
    	 */
    	private $email;
     
    	/**
    	 * @var string
    	 *
    	 * @ORM\Column(name="VILLE", type="string", length=255, nullable=true)
    	 */
    	private $ville;
     
    	/**
    	 * @var string
    	 *
    	 * @ORM\Column(name="COMMENTAIRE", type="text", nullable=true)
    	 */
    	private $commentaire;
    	/**
    	 * @var boolean
    	 *
    	 * @ORM\Column(name="SUPP", type="boolean", nullable=true)
    	 */
    	private $supp;
    // getter & setter
    }
    N.B. Je ne peux pas utiliser les formulaires imbriqués, car "dossierfonctionnaire" est un formulaire imbriqué dans un autre formulaire.

    Merci d'avance

  2. #2
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    HUGH !!

    je ne comprends pas. les ID sont générés automatiquement alors on s'en bat les coucougnettes quelque soit la valeur qu'elles prennent. le principal étant que les relations soient bien faites.

    c'est quoi l’intérêt de mettre le même ID ?

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 79
    Points : 43
    Points
    43
    Par défaut
    Yep,

    Déjà si tu veux faire ton idée, erreur dans l'entité coordonnées étant donné qu'elle est en auto-increment.

    Secondo,c'est complètement (pardon) bête ton principe.
    Tu peux très bien faire un ID respectif pour chacune de tes entités et ensuite faire une clé étrangère dans les entités qui pointe vers l'autre entité. Comme ça ta table coordonnees aura sa propre clé primaire en auto et une clé étrangère vers dossierfonctionnaire qui récupérera la clé primaire de cette dernière entité.

    Sinon, revoies le fonctionnement des entités

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 44
    Points : 25
    Points
    25
    Par défaut
    Je sais que les ID sont générés automatiquement, je veux faire de tel sorte qu'un dossierfonctionnaire x ait ses coordonnées y et pas des coordonnées y d'un autre dossier fonctionnaire !!

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 44
    Points : 25
    Points
    25
    Par défaut
    Effectivement Kevfou !! Tu as totalement raison Merci pr la réponse

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 79
    Points : 43
    Points
    43
    Par défaut
    Si ton soucis est résolu, penses à l'indiquer sur le fofo en cliquant sur le bouton Résolu

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

Discussions similaires

  1. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05
  2. [interbase6]probleme d'insertion dans une table
    Par macadam314 dans le forum Bases de données
    Réponses: 10
    Dernier message: 22/02/2005, 14h21
  3. [Sybase] Temps d'une insertion dans une table
    Par vsavoir dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 14/02/2005, 10h04
  4. Extraction d'un .txt et Insertion dans une table
    Par PoPmiSiR dans le forum Access
    Réponses: 8
    Dernier message: 28/10/2004, 19h13
  5. Détection insertion dans une Table
    Par abelman dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 06/07/2004, 14h24

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