Warning: PDOStatement::execute(): SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de '.name, pendent.price = products.price WHERE id IN (2,1)' à la ligne 1 in C:\wamp64\www\test site panier\db.class.php on line 32
SELECT products.id, products.name, products.price
FROM products INNER JOIN pendent
ON products.id != pendent.id AND products.name != pendent.name AND products.price != pendent.price
Signifie : donne moi la liste de tous les produits liés à tous les "pendent" qui n'ont aucune valeur en commun. Donc chaque produit sera lié à chaque "pendent" qui n'a pas exactement les mêmes valeurs ... je ne pense pas que cela ait un sens ...
FélixLefebure a écrit:
juste les ID sont pareils sur mes 2 tables.
Euh ... tu écris plus haut :
FélixLefebure a écrit:
(table 1 "products") > id Name Price Quantity
(table 2 "Pendent") > id Name Price Quantity
Pour moi tes deux tables sont identiques ... elles ont les mêmes colonnes (même si ces colonnes ne contiennent pas les mêmes valeurs).
FélixLefebure a écrit:
J'ai réalisé un panier en php session et souhaiterai affiché plusieurs catégories avec leurs produits
Alors excuse moi, mais je vais essayer de reprendre les choses depuis le début. Tu veux un système de panier, avec des produits et des catégories.
Il faut donc un modèle au minimum de ce genre :
categorie ( id_categorie [pk], nom )
produit ( id_produit [pk], libelle, prix_unitaire, id_categorie [fk] )
Cela fait donc 5 tables ... et aucune n'est identique tu remarqueras ...
Tu commences par enregistrer tes catégories dans la table categorie, chacune aura ainsi son id unique.
Tu enregistres ensuite tes produits dans la table produit, en rappelant l'id de la catégorie associée. Au passage n'est-il pas souhaitable qu'un article puisse être associé à plusieurs catégories ?
Lorsqu'un client se connecte tu enregistres sa session dans la table client pour lui donner un id unique.
Lorsqu'un client enregistré choisi un premier produit, tu crées un panier avec l'id du client et la date éventuellement, et tu relies le panier et le produit choisi dans la table panier_produit.
A chaque nouveau produit choisi tu rajoutes un enregistrement dans la table panier_produit ...
Dans tous les cas, je te conseille fortement la lecture complète du cours MySQL (que tu apparemment seulement survolé trop rapidement) ...
Non, la colonne id_produit de la table panier_produit ne peut pas être une clé primaire étant donné que tu peux avoir plusieurs enregistrements dans la table avec le même identifiant de produit.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.
- Edité par FélixLefebure 18 juillet 2019 à 18:07:02
MYSQL Jointure
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.