Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
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 22/11/2011, 12h44   #1
Invité de passage
 
Homme Joseph BLANCHARD
Développeur informatique
Inscription : novembre 2011
Messages : 2
Détails du profil
Informations personnelles :
Nom : Homme Joseph BLANCHARD
Localisation : France, Saône et Loire (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2011
Messages : 2
Points : 0
Points : 0
Par défaut Probleme de méthode pour récupérer un ID

Bonjour à tous.
Je suis nouveau ici, et débutant en MyQSL.

Je suis confronté à un problème tout bête, mais je ne sais pas trop comment m'en sortir.

Voici le MPD de ma base de donnée pour mieux comprendre.



Donc voici ma question:
Lorsque le client veut ajouter une fiche de prise en charge, il choisit soit de sélectionner un client dans une liste réalisée à partir de la BDD, soit il décide de rentrer directement ses paramètres (Nom,Prénom...).

Si il fait le premier choix aucun souci car en sélectionnant le client dans la liste, en fait il sélectionne l'ID et donc la liaison n'est plus un problème.
Par contre si il décide de rentrer manuellement les champs, lorsqu’il clique sur valider, il me faut enregistrer dans la table "Client" le nouveau client, puis dans la table "Fiche_De_Prise_En_Charge" ma nouvelle fiche où j'ai besoin de lui indiquer l'ID du client.

C'est là ou je bloque, comment récupérer cet ID du client??

Merci de votre aide et de vos remarques.
djolefou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2011, 13h32   #2
Expert Confirmé
 
Avatar de Maljuna Kris
 
Homme Avcxjo MoKo
Retraité
Inscription : novembre 2005
Messages : 2 530
Détails du profil
Informations personnelles :
Nom : Homme Avcxjo MoKo
Âge : 60

Informations professionnelles :
Activité : Retraité
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : novembre 2005
Messages : 2 530
Points : 3 523
Points : 3 523
Je ne vois pas d'autre solution que de valider d'abord la création du nouveau client, ce qui créera son identifiant, avant d'autoriser la saisie de la prise en charge.
Mais ce n'est pas un problème MySQL, c'est un problème de logique de processus de saisie.
__________________
Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
articles : Comment émuler un tableau croisé [quasi] dynamique
et : Une énigme mathématique résolue avec MySQL
recommande l'utilisation de PDO (PHP5 Data Objects)
Maljuna Kris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2011, 13h41   #3
Expert Confirmé
 
Homme
Inscription : mai 2002
Messages : 1 652
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2002
Messages : 1 652
Points : 2 653
Points : 2 653
si vosu utilisez des clef auto-incrémentées il y a une fonction (last_insert_id) qui permet de retourner le derneir id inséré.

Par contre il faut utiliser cette fonction dans la même connexion (voir transaction ?!) que celle qui fait l'insert (lisez la doc c'est assez bien expliqué)
punkoff est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 23/11/2011, 10h09   #4
Invité de passage
 
Homme Joseph BLANCHARD
Développeur informatique
Inscription : novembre 2011
Messages : 2
Détails du profil
Informations personnelles :
Nom : Homme Joseph BLANCHARD
Localisation : France, Saône et Loire (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2011
Messages : 2
Points : 0
Points : 0
Je vous remercie tout les deux de m'avoir répondu.
En effet le " last_id_insert" est je pense une bonne piste.
djolefou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h14.


 
 
 
 
Partenaires

Hébergement Web