Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1051 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  mon moteur recherche ne fonctionne pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

mon moteur recherche ne fonctionne pas

n°1011928
dodo
Posté le 14-03-2005 à 12:09:10  profilanswer
 

voilà j'ai créer un code html pour créer un moteur de recherche, qui renvoie le résultat vers un  fichier resultat.php.
 
mais je comprend pas pourquoi cela ne fonctionne pas
 
 

Code :
  1. form method="POST" action="admin_rechercher.php">
  2.   <td>recherche par</td><td><input type="text" name="appliq_rech" size="20" maxlength="">
  3.   <selected name="chercher">
  4.    <option value="id_membre">n° de membre</option>
  5.    <option value="nom">nom</option>
  6.    <option value="prenom">prenom</option>
  7.    <option value="cp">code Postal</option>
  8.    <option value="date_fin">date fin de licence</option>
  9.    </selected>
  10.   <input type="submit" value="chercher">
  11. </form>


 
 
[code]
 
<?php
 
                       if($_POST['submit']=="chercher" )
                      {
                         if($_POST['chercher']=="nom" )
                          {
                              $sql="SELECT nom  FROM membres WHERE like '%".chercher."%'";
^M
                                if($result=mysql_query($sql))^M
                                {^M
                                                                         if ($donnees=mysql_fetch_array($result))
                                                                         {
                                                                       ?>
 
[\code]

mood
Publicité
Posté le 14-03-2005 à 12:09:10  profilanswer
 

n°1011944
soju
One shot !
Posté le 14-03-2005 à 12:21:10  profilanswer
 

dodo a écrit :

[code]$sql="SELECT nom  FROM membres WHERE like '%".chercher."%'";[\code]


il manque un $
et attention ta recherche va faire un full scan sur la table, pas très bon pour les performances.

n°1011990
zeal21
Posté le 14-03-2005 à 13:28:56  profilanswer
 

en fait il doit surement t'en manquer plusieurs
quand tu fais  

Citation :

if($_POST['submit']=="$chercher" )


 
a chaque rajoute et de même tu peux faire

Citation :

$sql="SELECT nom  FROM membres WHERE like '%$chercher%'";


voila  ;)

n°1011991
KangOl
Profil : pointeur
Posté le 14-03-2005 à 13:31:15  profilanswer
 

zeal21 a écrit :

en fait il doit surement t'en manquer plusieurs
quand tu fais  

Citation :

if($_POST['submit']=="$chercher" )




totalement faux :o


---------------
Nos estans firs di nosse pitite patreye...
n°1012010
deliriumtr​emens
sic transit intestinal...
Posté le 14-03-2005 à 13:47:33  profilanswer
 

Plein de petites erreurs/horreurs
 

Code :
  1. <select name="chercher"> // et pas <selected>


 
Ensuite sur quoi tu fais ta recherche ?
Sur le champ texte, non ?
 
Donc

Code :
  1. if (isset($_POST['appliq_rech']))
  2.   {
  3.   $appliq_rech=$_POST['appliq_rech'];
  4.   }
  5. else
  6.   {
  7.   $appliq_rech='';
  8.   }


 
A partir de là

Code :
  1. //WHERE qqch LIKE qqch
  2. $sql="SELECT nom FROM membres WHERE nom LIKE '%$appliq_rech%'";


 
Enfin c'est un début, y aurait plein de petites choses à améliorer mais ça devrait te permettre de commencer tes tests.
 
C'est voulu que le <select> ait le même nom que le submit ?  
Moi j'éviterais a priori !


Message édité par deliriumtremens le 14-03-2005 à 13:52:27
n°1012028
dodo
Posté le 14-03-2005 à 14:00:17  profilanswer
 

ok je vais tester tout cela

n°1012055
dodo
Posté le 14-03-2005 à 14:19:07  profilanswer
 

mais ça pas l'air de fonctionner,  ne faut t-il pas préciser dans le form appliq_rech

n°1012100
deliriumtr​emens
sic transit intestinal...
Posté le 14-03-2005 à 14:48:29  profilanswer
 

Tu as des messages d'erreur ou juste aucun résultat ?
 
Balance un peu le code de tes 2 pages pour voir...
 
EDIT : au fait, si tu veux que le résultat apparaisse sur la page resultat.php, tu sais que l'action de ton formulaire doit être resultat.php, on est d'accord ?

Code :
  1. <form method="post" action="resultat.php">


Message édité par deliriumtremens le 14-03-2005 à 14:50:44
n°1012123
Profil sup​primé
Posté le 14-03-2005 à 15:04:53  answer
 

deliriumtremens : erreur, il n'a pas deux meme nom de champ : select s'appelle Chercher, et le submit n'a pas de nom, value c'est la valeur du controle
 
bon alors petit topo :
ne pas se servir de la valeur d'un bouton submit pour vérifier s'il a été cliqué : si tu modifie ton libellé tu dois modifier tout ton code
il faut passer par le nom du controle :
<input type="submit" name="monsubmit" value="ma valeur" />
 
-> if (isset($_POST['monsubmit']) { /* traitement */ }


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  mon moteur recherche ne fonctionne pas

 

Sujets relatifs
[Delphi] Pourquoi ce thread ne fonctionne pas ?PHP : A la recherche d'un script d'annonce
mon programme fonctionne t il chez vous?[LDAP] Recherche un cabinet d'expert sur Critical Path
recherche sur uen pageBorland - TDBGrid et recherche rapide
Recherche éditeur de texte pour programmer qui ne s'installe pasRecherche développeur(s) pour jeu vidéo
Requete de recherche sur plusieurs mots ?[java] recherche d'un élément dans un tableau.
Plus de sujets relatifs à : mon moteur recherche ne fonctionne pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR