IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

requêteur avec AND me pose souci ! [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 161
    Par défaut requêteur avec AND me pose souci !
    salutatous,

    j'ai un formulaire composé de 3 listes déroulantes + 2 boutons radio pour le choix AND ou OR

    ma recherche est correcte si je coche le bouton radio OR.

    MAIS le AND ne fonctionne uniquement que si j'ai fait un choix sur les 3 listes !!!

    si j'oublie une des 3 listes déroulantes, le résultat m'affiche 0 !!!

    c'est-à-dire que ça ne fonctionne pas si ma requête est du type (ici ville est vide) :
    SELECT id,nom,prenom FROM ma_table WHERE code_postal like 'code_postal' AND departement like 'departement' AND ville like ''

    voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    // +++++++++++++++++++++++++++++++++++++++++
    // TRAITEMENT
     
    // recup de la valeur "AND" ou "OR"
     
    $AND_OR = $radio_et_ou;
     
    // COMPOSITION DE LA REQUETE
     
    $requete = "SELECT id,nom,prenom FROM ma_table WHERE 
    			code_postal like '$code_postal' $AND_OR
    			departement like '$departement' $AND_OR 
    			ville like '$ville'
    ";
     
    $resultat = mysql_query($requete);
     
    // NOMBRE RÉSULTATS TROUVÉS
     
    $nombre_de_resultats = mysql_num_rows($resultat);
    echo "Votre requête a produit $nombre_de_resultats résultats";
    echo "<br /><br />";
     
    // AFFICHAGE DES RÉSULTATS
     
    if ($nombre_de_resultats > 0) {
     
    	// echo "<p></p>";
    	echo "<table border=1 cellspacing=0 cellpadding=3>";
    	echo "<tr>
    		<td width=250>&nbsp;</td><td width=100>Nom</td><td width=100>Prénom</td>
    		</tr>";
     
    	while ( $ligne = mysql_fetch_array($resultat) ) {
     
    		$nom = $ligne["nom"];
    		$prenom = $ligne["prenom"];
     
    		echo "<tr>
    			<td>&nbsp;$nom </td><td>&nbsp;$prenom </td>
    			</tr>";
    	}
    	echo "<table>";
    }
    merci de vos lumières
    Nico

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faut que tu ne mettes le critere dans ta requete que s'il n'est pas vide.

    par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if ($ville != '') { $where[] = "ville LIKE '$ville'"; }
    $requete = "SELECT id,nom,prenom FROM ma_table";
    if(isset($where)) { $requete .= ' WHERE ' . implode ($AND_OR, $where); }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 161
    Par défaut
    Merci Sabotage ça fonctionne parfaitement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. requete avec and not
    Par krfa1 dans le forum Requêtes
    Réponses: 1
    Dernier message: 19/09/2006, 16h39
  2. [Access] Requête (avec AND) sur 1 meme champ d'une table
    Par jeje22 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 11/09/2006, 22h59
  3. [VB.Net/Access] Pourquoi une connection multiple pose souci ?
    Par cbleas dans le forum Accès aux données
    Réponses: 2
    Dernier message: 10/08/2006, 16h57
  4. Migration client Oracle et source PB pose soucis
    Par Doctor Z dans le forum Powerbuilder
    Réponses: 1
    Dernier message: 28/07/2006, 09h07
  5. Requete sous Access avec AND et OR
    Par paflolo dans le forum Langage SQL
    Réponses: 2
    Dernier message: 28/02/2006, 10h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo