Moteur de recherche
Fermé
adama3636
Messages postés
67
Date d'inscription
lundi 28 janvier 2008
Statut
Membre
Dernière intervention
20 octobre 2011
-
9 avril 2009 à 17:55
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 10 avril 2009 à 18:10
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 10 avril 2009 à 18:10
A voir également:
- Moteur de recherche
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Google moteur de recherche page d'accueil - Guide
- Safari moteur de recherche - Télécharger - Navigateurs
- Installer qwant moteur de recherche - Télécharger - Navigateurs
- Copernic moteur de recherche - Télécharger - Navigateurs
5 réponses
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
9 avril 2009 à 18:03
9 avril 2009 à 18:03
essaye d'utiliser where like '%%' avec le like et les %, ta recherche sera moins précise et donnera plus de résultat.
par exemple si tu cherche "jour"
la requete enverra (si c'est dans la table évidemment :p)
jour
bonjour
journée
etc
EDIT : je pense que si une de tes variable par exemple $prenom ne contient rien, cela donnera "$nom OR OR $..." et il y aura une erreur mais a vérifier !
a+
par exemple si tu cherche "jour"
la requete enverra (si c'est dans la table évidemment :p)
jour
bonjour
journée
etc
EDIT : je pense que si une de tes variable par exemple $prenom ne contient rien, cela donnera "$nom OR OR $..." et il y aura une erreur mais a vérifier !
a+
adama3636
Messages postés
67
Date d'inscription
lundi 28 janvier 2008
Statut
Membre
Dernière intervention
20 octobre 2011
9 avril 2009 à 19:30
9 avril 2009 à 19:30
j'ai aissaye de le remplacer et ca ma donner
$reponse=mysql_query("SELECT * FROM etudiants WHERE nom='$nom' LIKE '%$nom%' OR prenom='$prenom' LIKE '%$prenom%' OR nom_filiere='$nom_filiere' LIKE '%$nom_filiere%' OR annee_promo='$annee_promo' LIKE '%annee_promo%' OR niveau_promo='$niveau_promo' LIKE '%$niveau_promo%'") die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error());
while($donnees=mysql_fetch_array($reponse))
{
echo $donnees['nom']."<br/>";
echo $donnees['prenom']."<br/>";
echo $donnees['nom_filiere']."<br/>";
echo $donnees['annee_promo']."<br/>";
echo $donnees['niveau_promo']."<br/>";
echo $donnees['profession']."<br/>";
}
mais ca me donne toujours l'erreur : Parse error: parse error in c:\program files\easyphp1-8\www\licence2teleinf\rencontre.com\script_rechercher_1.php on line 9 ( la ligne commencant par "$reponse=mysql_query("SELECT ...")
$reponse=mysql_query("SELECT * FROM etudiants WHERE nom='$nom' LIKE '%$nom%' OR prenom='$prenom' LIKE '%$prenom%' OR nom_filiere='$nom_filiere' LIKE '%$nom_filiere%' OR annee_promo='$annee_promo' LIKE '%annee_promo%' OR niveau_promo='$niveau_promo' LIKE '%$niveau_promo%'") die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error());
while($donnees=mysql_fetch_array($reponse))
{
echo $donnees['nom']."<br/>";
echo $donnees['prenom']."<br/>";
echo $donnees['nom_filiere']."<br/>";
echo $donnees['annee_promo']."<br/>";
echo $donnees['niveau_promo']."<br/>";
echo $donnees['profession']."<br/>";
}
mais ca me donne toujours l'erreur : Parse error: parse error in c:\program files\easyphp1-8\www\licence2teleinf\rencontre.com\script_rechercher_1.php on line 9 ( la ligne commencant par "$reponse=mysql_query("SELECT ...")
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
10 avril 2009 à 09:59
10 avril 2009 à 09:59
ok,
alors dabord le where like s'utilise comme ceci
WHERE nom LIKE '%$nom%' OR LIKE ...
Tu ne doit pas mettre de valeur entre where et like ;)
ensuite, mais un "or" juste avant ton die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error())
Ou enlève le, chez moi, parfois c'est ça qui faisait planter le code.
Pour "LIKE '%annee_promo%'" tu n'a pas mi annee_promo en variable, c'est normal?
Je pense que ça devrait aller après ça.
alors dabord le where like s'utilise comme ceci
WHERE nom LIKE '%$nom%' OR LIKE ...
Tu ne doit pas mettre de valeur entre where et like ;)
ensuite, mais un "or" juste avant ton die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error())
Ou enlève le, chez moi, parfois c'est ça qui faisait planter le code.
Pour "LIKE '%annee_promo%'" tu n'a pas mi annee_promo en variable, c'est normal?
Je pense que ça devrait aller après ça.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
10 avril 2009 à 12:06
10 avril 2009 à 12:06
tu ne peux pas mettre dans ton WHERE à la fois = et LIKE pour un même champ ou alors il faut faire un autre OR
et il faut or die et pas die (si la requeette ne fonctionne pas on fait die)
et dans ta trace d'erreur tu mets $SQL où est cette variable ?
fais comme ça:
saches tout de même que avec LIKE tu sortira tous les enregistrements "approchants"
et il faut or die et pas die (si la requeette ne fonctionne pas on fait die)
et dans ta trace d'erreur tu mets $SQL où est cette variable ?
fais comme ça:
$SQL="SELECT * FROM etudiants WHERE nom LIKE '%$nom%' OR prenom LIKE '%$prenom%' OR nom_filiere LIKE '%$nom_filiere%' OR annee_promo LIKE '%annee_promo%' OR niveau_promo LIKE '%$niveau_promo%'"; $reponse=mysql_query($SQL) or die("La requête <BR><PRE>$SQL</PRE>a échoué : ".mysql_error());
saches tout de même que avec LIKE tu sortira tous les enregistrements "approchants"
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
10 avril 2009 à 12:11
10 avril 2009 à 12:11
Heu, ce n'est pas ce que j'ai dis plus haut? C'est un peu vexant je trouve.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
10 avril 2009 à 18:10
10 avril 2009 à 18:10
ne te vexes pas je n'avait pas vu ton post