Barre de recherche avec php [Résolu]

Signaler
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016
-
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016
-
Bonjour, j'ai fait ce code et j'ai cet erreur

Notice: Undefined index: rechercherpar in C:\wamp\www\test1\banque\RechercherClient.php on line 54

Notice: Undefined index: mot_cle in C:\wamp\www\test1\banque\RechercherClient.php on line 55



Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\test1\banque\RechercherClient.php on line 65

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\test1\banque\RechercherClient.php on line 66





Code html

<form action="RechecherClient.php" method="Post">        
  Rechercher par <select name="rechercherpar">
                                  <option>id_client</option>
                                  <option>Nom_Client</option>
                                  <option>Prenom_Client</option>
                              </select>
          Mot clé <input type="text" name="mot_cle">
                     <input type="submit" value="Rechercher">





code


Code php

<?php
 
//Connexion Mysql
 require("Mysql_Connect.php");  
function search()
          {
   $champ=$_POST['rechercherpar'];
   $mot=$_POST['mot_cle'];
   
  $sql = "SELECT * FROM client
          WHERE  $champ=\"$mot\"";
// Affichage de la requête si besoin:
echo "<center><br><b></b></br></center>";

// Lancement de la requête :
$resultat=mysql_query($sql); 
   
$ligne=mysql_fetch_array($resultat);
$nb=mysql_num_rows($resultat);
$i=0;
       while($i<$nb)
          {
   $num=$ligne['id_client'];
   $type=$ligne['Nom_Client'];
   $soustype=$ligne['Prenom_Client'];
 echo $num.' '.$type.' '.$soustype;
$i=$i+1;
          }
          }
search();
?>


lifa8

7 réponses

Messages postés
16019
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
10 juin 2021
549
Bonjour, message modifié par l'ajout des balises de code.
Voir ici comment utiliser la coloration syntaxique.
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

et ya pas d'erreur sur le code
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
Le message d'erreur laisse penser à une erreur de syntaxe SQL, regardes si ta requête est bonne (avec un echo par exemple).
Ensuite, prendre les paramètres envoyés par le navigateur en direct, c'est pas forcément une bonne idée, contrôles toujours les données envoyées par le client (Injection SQL).
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

jai essayer mais ca passe pas
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
As-tu regardé pour voir si ta requête fonctionne ?
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

comment faire j'ai essaye un echo"requete" mais toujour la meme chose
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
echo $sql;
?
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

il m'affiche SELECT * FROM client WHERE ="" ca veut dire!!
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
Ta requête est incorrecte, car tes variables $champ et $mot ne sont pas renseignées.
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

et je dois les definir avec la fonction if(isset) oubien
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

c fait je les ai defini et maintenant jai ce probleme apres l'execution de la requte:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\test1\banque\RechercherClient.php on line 67

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\test1\banque\RechercherClient.php on line 68
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
Même remarque, que vaut ta requête SQL ?
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

j'ai lancer la requete et je les stockes sous la variable $requete:
$resultat=mysql_query($sql);
Messages postés
43
Date d'inscription
vendredi 20 juin 2014
Statut
Membre
Dernière intervention
3 mai 2016

Merci pour votre aide c'est resolu