Tri dans requete MySQL
aviateur
-
Psyk974 Messages postés 551 Date d'inscription Statut Membre Dernière intervention -
Psyk974 Messages postés 551 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous sur le forum "programmation",
Je n'arrive pas à imbriquer deux conditions selon que l'on utilise un ou deux mots pour la recherche. La base de données contient des noms et des numéros de classe... la recherche se fait soit par nom soit par numéro de classe.
voici le départ du script :
<?php
include('connexion.php');
$h = $_POST['name'];
echo "<BR><BR><BR>\n";
echo $row['date'];
echo "Votre recherche sur... <EM>$h</EM>.\n";
echo "<BR><BR>\n";
$SQL = "SELECT * FROM annuaire WHERE nom_prenom LIKE '$h%' AND actif = 'oui'";
$result = mysql_query($SQL) or die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error());
$article =mysql_fetch_object($result);
$result = mysql_query($SQL) ;
echo "<td width=\"20%\" align=\"left\"> $row[1]... $row[2], $row[3], $row[4]";
echo "</TR>";
echo"</table>";
?>
dans ce script j'arrive à faire afficher le nom des adhérents (nom_prenom) et seulement si leur statut actif est OUI...
.... je voudrai ajouter la variable $c pour la recherche par classe, j'ai fait différents essais sans résultat probants... soit que je n'ai rien comment résultat, soit que j'ai tout le contenu de la BDD...
Quelqu'un peut-il me montrer la façon d'inclure une deuxième option de tri dans mon script...
Merci d'avance et bonne fin de journée à tous sur le forum
Je n'arrive pas à imbriquer deux conditions selon que l'on utilise un ou deux mots pour la recherche. La base de données contient des noms et des numéros de classe... la recherche se fait soit par nom soit par numéro de classe.
voici le départ du script :
<?php
include('connexion.php');
$h = $_POST['name'];
echo "<BR><BR><BR>\n";
echo $row['date'];
echo "Votre recherche sur... <EM>$h</EM>.\n";
echo "<BR><BR>\n";
$SQL = "SELECT * FROM annuaire WHERE nom_prenom LIKE '$h%' AND actif = 'oui'";
$result = mysql_query($SQL) or die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error());
$article =mysql_fetch_object($result);
$result = mysql_query($SQL) ;
echo "<td width=\"20%\" align=\"left\"> $row[1]... $row[2], $row[3], $row[4]";
echo "</TR>";
echo"</table>";
?>
dans ce script j'arrive à faire afficher le nom des adhérents (nom_prenom) et seulement si leur statut actif est OUI...
.... je voudrai ajouter la variable $c pour la recherche par classe, j'ai fait différents essais sans résultat probants... soit que je n'ai rien comment résultat, soit que j'ai tout le contenu de la BDD...
Quelqu'un peut-il me montrer la façon d'inclure une deuxième option de tri dans mon script...
Merci d'avance et bonne fin de journée à tous sur le forum
A voir également:
- Tri dans requete MySQL
- Comment faire un tri personnalisé sur excel - Guide
- Logiciel tri photo - Guide
- Mysql community server - Télécharger - Bases de données
- Votre colis est retenu au centre de tri - Accueil - Arnaque
- Google sheet tri automatique ✓ - Forum Bureautique
2 réponses
Salut voila ta nouvelle requête
$SQL = 'SELECT * FROM annuaire WHERE nom_prenom LIKE '.$h.'% AND date LIKE '.$c.'% actif = "oui"';
Ton "%" était mal placé
$SQL = 'SELECT * FROM annuaire WHERE nom_prenom LIKE '.$h.'% AND date LIKE '.$c.'% actif = "oui"';
Ton "%" était mal placé
Salut Psyk
Merci beaucoup pour ton aide qui m'a montré le chemin...
Après avoir essayé la formulation de ta requête qui ne marchait pas et m'amenait <a une erreur sql, j'ai cherché un peu et suis arrivé a cette formulation qui marche :
$SQL = "SELECT * FROM annuaire WHERE nom_prenom LIKE '$h%'AND classe LIKE '$c%' AND actif = 'oui'";
Je ne pensais pas que l'on pouvait ajouter indéfiniment des conditions AND à plusieurs reprises (il doit sans doute arriver un moment où ça bloque...?)
Le principal est que cela fonctionne dans mon cas..!
Encore une fois merci pour l'aide apportée... à toi et au précédent qui m'a dit de rajouter une condition AND
Bonne journée à tous sur le forum
Cordialement
Merci beaucoup pour ton aide qui m'a montré le chemin...
Après avoir essayé la formulation de ta requête qui ne marchait pas et m'amenait <a une erreur sql, j'ai cherché un peu et suis arrivé a cette formulation qui marche :
$SQL = "SELECT * FROM annuaire WHERE nom_prenom LIKE '$h%'AND classe LIKE '$c%' AND actif = 'oui'";
Je ne pensais pas que l'on pouvait ajouter indéfiniment des conditions AND à plusieurs reprises (il doit sans doute arriver un moment où ça bloque...?)
Le principal est que cela fonctionne dans mon cas..!
Encore une fois merci pour l'aide apportée... à toi et au précédent qui m'a dit de rajouter une condition AND
Bonne journée à tous sur le forum
Cordialement