Pb requete code postal
8 messages
• Page 1 sur 1
-

bradeux - WRInaute occasionnel

- Messages: 390
- Inscription: 18 Mai 2005
Pb requete code postal
Slt à tous!
Je seche sur une requete php
Pour vous expliquer: j'ai 2 tables, une "produit" et une autre "membre".
Le but est d'afficher les produits des membres residant dans un département choisi et passé en variable dans l'url.
Dans la table membre, j'ai un champs code postal (de 5 chiffres).
Et dans la table produit, j'ai un "membre.id" qui me permet de faire la jonction avec la table membre.
mon problème est donc que je n'arrive pas à afficher les produits des membres résidant dans un déparement type 59 (puisque le code postal dans la table membre contient 5 chiffres type 59500) ...
Voici ma requete sql:
une idée?
merci!!!
Je seche sur une requete php
Pour vous expliquer: j'ai 2 tables, une "produit" et une autre "membre".
Le but est d'afficher les produits des membres residant dans un département choisi et passé en variable dans l'url.
Dans la table membre, j'ai un champs code postal (de 5 chiffres).
Et dans la table produit, j'ai un "membre.id" qui me permet de faire la jonction avec la table membre.
mon problème est donc que je n'arrive pas à afficher les produits des membres résidant dans un déparement type 59 (puisque le code postal dans la table membre contient 5 chiffres type 59500) ...
Voici ma requete sql:
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select * from products INNER JOIN members ON products.membersid = members.id where members.zip='$zip'";
une idée?
merci!!!
- jidébé
- WRInaute discret

- Messages: 178
- Inscription: 26 Juil 2005
Bonsoir,
Quelquechose comme ça:
Jean-Denis
Quelquechose comme ça:
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select * from products INNER JOIN members ON products.membersid = members.id where LEFT(members.zip,2)='$zip'";
Jean-Denis
-

phpmikedu83 - WRInaute passionné

- Messages: 1281
- Inscription: 6 Aoû 2005
J'y mettrais plus un
dans la condition mysql, pour une question de performances
Mais bon, c'est un détail...
- Code: Tout sélectionner
members.zip LIKE '$zip%'
dans la condition mysql, pour une question de performances
Mais bon, c'est un détail...
- ddpetit
- WRInaute discret

- Messages: 81
- Inscription: 22 Fév 2006
As-tu essayé cela :
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select * from products WHERE products.membersid IN (SELECT members.id FROM members WHERE members.zip='$zip')";
-

UsagiYojimbo - WRInaute accro

- Messages: 8300
- Inscription: 23 Nov 2005
ddpetit a écrit:As-tu essayé cela :
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select * from products WHERE products.membersid IN (SELECT members.id FROM members WHERE members.zip='$zip')";
Et un petit mysql_real_escape_string($zip) ca serait pas mal pour la sécurité.
-

bradeux - WRInaute occasionnel

- Messages: 390
- Inscription: 18 Mai 2005
jidébé a écrit:Bonsoir,
Quelquechose comme ça:
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select * from products INNER JOIN members ON products.membersid = members.id where LEFT(members.zip,2)='$zip'";
Jean-Denis
Parfait ca marche merci!
par contre comme j'ai 2 champs qui porte le mm nom ("id") et que j'ai fait une jonction, je n'arrive pas à distinguer les champs de products de ceux de members.
j'essai ca, mais ca ne me renvoi rien
- Code: Tout sélectionner
$product_id=$rs0["products.id"];
- jidébé
- WRInaute discret

- Messages: 178
- Inscription: 26 Juil 2005
Bonjour,
Tu peux faire ça:
Et ensuite tu récupère les valeurs en utilisants les alias (produit ou membre), biensûr dans ce cas là il faut lister dans ta requète l'ensemble des champs que tu veux récupérer.
Jean-Denis
Tu peux faire ça:
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select product.id AS produit, members.id AS membre from products INNER JOIN members ON products.membersid = members.id where LEFT(members.zip,2)='mysql_real_escape_string($zip)'";
Et ensuite tu récupère les valeurs en utilisants les alias (produit ou membre), biensûr dans ce cas là il faut lister dans ta requète l'ensemble des champs que tu veux récupérer.
Jean-Denis
-

bradeux - WRInaute occasionnel

- Messages: 390
- Inscription: 18 Mai 2005
jidébé a écrit:Bonjour,
Tu peux faire ça:
- Code: Tout sélectionner
$_REQUEST["zip"]="59";
$zip=$_REQUEST["zip"];
$sql="select product.id AS produit, members.id AS membre from products INNER JOIN members ON products.membersid = members.id where LEFT(members.zip,2)='mysql_real_escape_string($zip)'";
Et ensuite tu récupère les valeurs en utilisants les alias (produit ou membre), biensûr dans ce cas là il faut lister dans ta requète l'ensemble des champs que tu veux récupérer.
Jean-Denis
Génial ca marche!
merci pour votre aide
++
8 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
Consultez la description détaillée des produits ou services de Google suivants : Google Code
- Analyseur d'entête HTTP
Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités
