Page 1 sur 1

probleme requete select

Posté : 26 mars 2009, 10:12
par adel
bonjour
je voudrait recuperet tout ce qui est peinture et dessin dans le champ gategorie de la table article
mais je n'arrive pas
______________________________

table article

id url categorie

1092 ./repertoire/photo1.jpg dessin
1087 ./repertoire/photo1.jpg peinture
1091 ./repertoire/photo1.jpg peinture


include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' AND categorie='dessin' ",$db);
_________________________
si je fais cela pas de probleme mais j'en n'ais qu'un
include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' ",$db);



[/php]

Posté : 26 mars 2009, 10:31
par Aureusms
Mauvais mot clef : Remplace AND par OR tu recherchera peinture ou dessin sauf si tu veux qu'il y ait peinture et dessin dans le même champ mais vu ton exemeple tu n'en a pas.

Code : Tout sélectionner

$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' OR categorie='dessin' ",$db);

re

Posté : 26 mars 2009, 12:46
par adel
non
je voudrais recuperet les deux peinture et dessin
de maniers a avoir les photos des peinture et dessin via l'url

Posté : 26 mars 2009, 12:51
par Aureusms
As tu testé la requête au moins ?

Posté : 26 mars 2009, 12:52
par furiouslol
Si tu veux récupérer les articles qui sont a la fois des peintures ET des dessins, ce qui reste peu probable, alors il te faut mettre un AND dans ta requête

Par contre si tu veux récupérer les articles qui sont des dessins OU des peintures, alors il te faut mettre le OR dans ta requête

En gros essaye ce que t'as suggéré Aureusms :wink:

Posté : 26 mars 2009, 13:02
par Aureusms
Pour t'aider :

Code : Tout sélectionner

table article id url categorie 1092 ./repertoire/photo1.jpg dessin 1087 ./repertoire/photo1.jpg peinture 1091 ./repertoire/photo1.jpg peinture
include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' AND categorie='dessin' ",$db); 
Te retournera rien car categorie ne peut pas être = à peinture et à dessins en même temps

include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' ",$db); 
Te retournera que les peintures
include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie='dessin' ",$db); 
Te retournera que les dessins
include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' OR categorie='dessin' ",$db); 
Te retournera toutes les catégories où il y a peinture et/ou dessins dedans mais séparément. Vois tu la différence ? Le moteur mysql sélectionnera les catégories qui possèdent le mot clef "peinture" ou le mot clef "dessin", et génèrera une pile de résultats que tu pourra "dépiler" avec mysql_fecth_XXX (row ou assoc ou array = row+assoc)

Tu peux même ressortir tous les dessins puis toutes les peintures dans cette pile :
include_once("connextion-localhost.php");
$recherche = mysql_query ("SELECT * from article WHERE categorie ='peinture' OR categorie='dessin' ORDER BY categorie ASC",$db); 
Te retournera toutes les catégories dessins + peintures avec d'abord les dessins puis ensuite les peintures (classement par ordre alphabétique)

Posté : 26 mars 2009, 13:15
par adel
merci