PHP/MySQL et clef étrangère

PHP/MySQL et clef étrangère - PHP - Programmation

Marsh Posté le 07-05-2004 à 12:50:12    

Salut à tous,  
 
depuis que je code sous PHP je me pose la question à savoir si il n'existe pas une méthode simple pour récuperer le libellé d'une table satelitte via sa clef.
 
Ex : J'ai une table PRODUIT, qui contient "num_familleProduit", et j'ai une table FAMILLEPRODUIT, avec donc la clef "num_familleProduit".
 
N'y a t il pas un moyen simple de faire un enregistrement d'un produit sans avoir à récuperer le numéro de sa famille dont le libellé a été sélectionné ?? (en gros faire un SELECT num_familleProduit where nom_familleProduit = "MONCHOIX" ) ??
 


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-05-2004 à 12:50:12   

Reply

Marsh Posté le 07-05-2004 à 13:18:36    

la question est archi mal posée mais a mon avis c'est une jointure que tu veux ... ?

Reply

Marsh Posté le 07-05-2004 à 13:30:31    

peut-être que la fonction mysql last_insert_id répond à ton problème ;)

Reply

Marsh Posté le 07-05-2004 à 14:23:46    

J'essaye d'être clair avec un exemple
 
On va dire que j'ai le formulaire suivant :  
 
Nom du produit : Ecran 15"
Famille du produit : |Moniteur|V| <-- c une liste déroulante :D
 
J'ai les tables suivantes :  
 
PRODUIT
num_produit
nom_produit
num_familleproduit
 
et  
 
FAMILLEPRODUIT
num_familleproduit
nom_familleproduit
 
Donc, je voulais savoir comment enregistrer le num_familleproduit dans la table PRODUIT de la famille choisie lorsque je vais enregistrer cette fiche.


Message édité par shade93 le 07-05-2004 à 14:27:56

---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-05-2004 à 14:28:39    

1) insérer FAMILLEPRODUIT
2) récupérer l'ID avec last_insert_id()
3) insérer PRODUITE avec comme num_familleproduit le résultat de last_insert_id()

Reply

Marsh Posté le 07-05-2004 à 14:29:28    

mais comme la famille est une liste déroulante (existant dans la bdd donc) pourquoi faire un insert encore une fois ???

Reply

Marsh Posté le 07-05-2004 à 15:10:09    

bin le num_familleproduit est une fk dans PRODUIT !
Donc ya pas à l'insérer dans FAMILLEPRODUIT mais bien dans PRODUIT !!


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-05-2004 à 15:44:06    

ben, met ta fk en value de ta liste déroulante :heink:

Reply

Marsh Posté le 07-05-2004 à 19:43:00    

ah oui...  [:cupra]
Ché plus si c t vraiment ça mon problème, ça me parait simple  [:chokiller]


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed