Relation entre deux tables en SQL/PHP
Résolu/Fermé
persepolis7
Messages postés
58
Date d'inscription
mercredi 10 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2019
-
Modifié le 12 sept. 2018 à 16:04
jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 mars 2025 - 12 sept. 2018 à 16:11
jordane45 Messages postés 38453 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 mars 2025 - 12 sept. 2018 à 16:11
A voir également:
- Relation entre deux tables sql
- Itinéraire google map entre deux adresses - Guide
- Deux ecran pc - Guide
- Tables des matières word - Guide
- Nombre de jours entre deux dates excel - Guide
- Comment faire deux colonnes indépendantes dans word - Guide
3 réponses
jee pee
Messages postés
40956
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
21 mars 2025
9 568
Modifié le 12 sept. 2018 à 15:53
Modifié le 12 sept. 2018 à 15:53
Bonjour,
Non ce n'est pas totalement clair ;-)
Quand tu fais l'insert dans la table produit, il faut mettre l'id de l'utilisateur connecté dans le champ idutilisateur.
Et pour afficher la liste avec le nom tu feras un :
(je suis de la vieille école, je ne pratiquais pas le JOIN ;-)
Pour être plus clair je n'utiliserais pas dans les tables produit et utilisateur la clé nommée id, mais un nom distinct à chaque fois idproduit, idutilisateur
Cdlt
Non ce n'est pas totalement clair ;-)
Quand tu fais l'insert dans la table produit, il faut mettre l'id de l'utilisateur connecté dans le champ idutilisateur.
Et pour afficher la liste avec le nom tu feras un :
select produit.id, nomduproduit, nom, prénom from produit, utilisateur where utilisateur.id = produit.idutilisateur
(je suis de la vieille école, je ne pratiquais pas le JOIN ;-)
Pour être plus clair je n'utiliserais pas dans les tables produit et utilisateur la clé nommée id, mais un nom distinct à chaque fois idproduit, idutilisateur
Cdlt
jordane45
Messages postés
38453
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 mars 2025
4 740
12 sept. 2018 à 15:52
12 sept. 2018 à 15:52
Bonjour
SELECT * FROM produit P LEFT JOIN utilisateur U ON U.id = P.IdUtilisateur
persepolis7
Messages postés
58
Date d'inscription
mercredi 10 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2019
1
12 sept. 2018 à 15:59
12 sept. 2018 à 15:59
Merci mais pour l'ajout comment procède t-on ? j'ai essayé de le faire juste en bas
jordane45
Messages postés
38453
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 mars 2025
4 740
>
persepolis7
Messages postés
58
Date d'inscription
mercredi 10 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2019
Modifié le 12 sept. 2018 à 16:02
Modifié le 12 sept. 2018 à 16:02
persepolis7
Messages postés
58
Date d'inscription
mercredi 10 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2019
1
12 sept. 2018 à 16:04
12 sept. 2018 à 16:04
Je viens de voir..
persepolis7
Messages postés
58
Date d'inscription
mercredi 10 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2019
1
Modifié le 12 sept. 2018 à 16:00
Modifié le 12 sept. 2018 à 16:00
J'aurais besoin d'aide notamment sur les champs "Id, IdUtilisateur"
à quoi faire correspondre l'IdUtilisateur ? à l'Id de la table Utilisateur ?
L'Id de la table produit reste donc en autoincremente puisque c'est l'Id du produit est-ce correcte ?
à quoi faire correspondre l'IdUtilisateur ? à l'Id de la table Utilisateur ?
prepare( "INSERT INTO produit( nomDuProduit, prix ) VALUES(?, ?) WHERE IdUtilisateur = ?" );
execute( array( $nomProduit, $prix, $_SESSION['Id'] ) );
L'Id de la table produit reste donc en autoincremente puisque c'est l'Id du produit est-ce correcte ?
jordane45
Messages postés
38453
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 mars 2025
4 740
12 sept. 2018 à 15:57
12 sept. 2018 à 15:57
INSERT INTO produit( nomDuProduit, prix ,IdUtilisateur ) VALUES(?, ?, ?)
Et oui.. IdUtilisateur .. ben c'est l'id de ton utilisateur. (du vendeur vu que c'est ce que tu veux)...
persepolis7
Messages postés
58
Date d'inscription
mercredi 10 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2019
1
12 sept. 2018 à 16:03
12 sept. 2018 à 16:03
J'étais pas sûr :) merci
12 sept. 2018 à 15:55
Argghhhh.... vade retro satanas... :-)
mais tu pourrais au moins utiliser les alias de table. :-)
et bonjour quand même ^^
12 sept. 2018 à 16:06
12 sept. 2018 à 16:11
Quelle drôle d'idée....(et quelle bêtise).
Pourquoi vouloir donner un nom distinct aux champs... sachant qu'on est dans la table..
Un exemple
Table utilisateur ( id, nom, prenom)
Pourquoi vouloir mettre
Table utilisateur ( idUtilisateur, nom, prenom) ??
Dans ce cas.. autant pousser au maximum
Table utilisateur ( idUtilisateur, nomUtilisateur, prenomUtilisateur) ....
Sachant que quand tu fais ta requête... soit tu nommes les tables soit (et c'est plus lisible...) tu utilises des alias...
De cette façon.. lorsque tu dois faire des jointures entre les tables.. tu n'as pas à te demander si tu as bien orthographié le nom du champ ... id_utilisateur ? IDUtilisateur ? idUtilisateur, id_Utilisateur ..... tu sais que c'est id ... et c'est tout.
NB: Il est également préférable de TOUJOURS nommer ses champs en MINULSCULE et sans caractères accentués ou spéciaux.
Voila...