Formulaire de recherche : option non choisie

Fermé
pixel - 10 janv. 2008 à 11:22
 pixel - 11 janv. 2008 à 16:17
Bonjour,
Je souhaite mettre sur mon site un genre de petit moteur de recherche, dans lequel je n'impose pas a l'utilisateur de faire un choix pour ttes les options.

ex :

sexe H ou F
enfants OUI ou NON

Ensuite je fais un

mysql_query("SELECT * FROM table WHERE sexe='post[sexe]', enfants='post[enfants]'");

Mon pb est le suivant:

Si le visiteur ne precise pas le nbre d'enfants de sa recherche on aura un post[enfants] = ''
(empty) et donc la requete mysql ne renverra que les personnes ayant un nombre d'enfant egal à '' et donc la il y a un bug

Comment faire pour eviter ce pb ?? (j'espere avoir eté claire :s)

merci a vous
A voir également:

3 réponses

donald44 Messages postés 63 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 4 février 2009 2
10 janv. 2008 à 11:27
Hello
Tu dois avoir un moyen pour mettre la valeur 0 par défaut pour les champs que tu désire
Ou tu peut modifier ta base de données pour que la table qui contient le nombre d'enfants accepte la valeur null.
0
Bonjour,

non il faut faire une requette "adaptée" aux valeurs saisies

une piste:

$query="SELECT * FROM table WHERE sexe='post[sexe]'";
if(isset($_POST['enfants'] AND $_POST['enfants']!="")){

$query.=" AND enfants='$_POST['enfants']'";

}
$req=mysql_query($query);


etc...

remarque au passage c'est POST et pas post

et les conditions dans WHERE ne sont pas avec des virgules mais des OR ou des AND etc....
0
excellent par concaténation alain !
surtout pour plus de 2 critères !!

merci bien
a+
0