Problème de formulaire de recherche

Résolu
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023 - 20 sept. 2014 à 23:50
jordane45 Messages postés 37721 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 septembre 2023 - 21 sept. 2014 à 00:36
Bonjour,
mon formulaire de recherche me donne pas le résultat souhaité.
quand je met le matricule de quelqu'un pour le retrouver il me donne un autre résultat.

je fais
<?php echo extract($_POST);; ?>
me donne 2 au lieu de 0220

voici mon formulaire :
                   <form  method="post" action="index.php?page=search" style="border-radius: 5px 0px 10px 25px/5px 0px 10px 25px">
                      <table width="240" border="0" align="right" >
                        <tr>
                          <td width="151"><input type="text" name="search" /></td>
                          <td width="79"><input type="submit" name="Submit" value="SEARCH" /></td>
                        </tr>
                      </table>
                  </form>


mon code php .
<?php
include('menu/menu.php');

if(empty($_POST) || empty($_POST['search']))
{
header('Location: index.php?page=NOUVEAU');
}
else
{
extract($_POST);
}
?>
.............

6 réponses

NHenry Messages postés 15083 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 19 septembre 2023 159
20 sept. 2014 à 23:58
echo extract($_POST);

Où est le nom du champ du formulaire ?
0
jordane45 Messages postés 37721 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 septembre 2023 342
20 sept. 2014 à 23:59
Bonjour,

Après avoir saisi : 0220 dans ton input puis cliqué sur ton bouton submit..Tu peux faire un Print_r de POST et nous dire ce qu'il t'affiche ?

if(empty($_POST) || empty($_POST['search']))
	{
	 header('Location: index.php?page=NOUVEAU');
	}
else
	{
          print_r($_POST);
	  extract($_POST);
	}	
?>

0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023 1
21 sept. 2014 à 00:04
voici ce que j'obtiens:
Array ( [search] => 0220 [Submit] => SEARCH )
0
jordane45 Messages postés 37721 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 septembre 2023 342
Modifié par jordane45 le 21/09/2014 à 00:15
En même temps... echo de extract($_post).. ne te donnera pas le résultat attendu..c'est sûr...

testes ça ..

 if(empty($_POST) || empty($_POST['search'])){
     header('Location: index.php?page=NOUVEAU');
  }else{
     extract($_POST);
     echo "<br> Print _r(post)=>";
    print_r($_POST);
     echo "<br>extract($ _ POST) => ".extract($_POST);
     echo "<br>search => ".$search;
  }



Ce qui donne comme résultats :

Print _r(post)=>Array ( [search] => 0220 [Submit] => SEARCH )
extract($ _ POST) => 2
search => 0220

...C'est donc directement la variable : $search qu'il te faut utiliser APRES avoir fait un Extract.

Perso je préfère ne pas utiliser cette fonction extract() ... elle ne te permet pas de vérifier si ta variable existe avant de l'utiliser..;

Je préfère faire :

//Recuperation de la variable :
$search = isset($_POST['search'])?$_POST['search']:NULL;

// Utilisation...
if($search){
  echo "<br>Search = ".$search;
}else{
echo "<br>La variable n'existe pas !<br>";
}





Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023 1
21 sept. 2014 à 00:20
je viens de tester :
//Recuperation de la variable :
$search = isset($_POST['search'])?$_POST['search']:NULL;

// Utilisation...
if($search){
echo "<br>Search = ".$search;
}else{
echo "<br>La variable n'existe pas !<br>";
}
j'obtiens : Search = 0220

mais ma requète n'afiche rien :

voici ma requète :
<?php
$sql = "SELECT *
FROM victime
WHERE numQuest0
LIKE '%$search%'
OR nomV LIKE '%$search%'
OR prenomV LIKE '%$search%'
OR numeroPieceV LIKE '%$search%'
";

......
?>
0
jordane45 Messages postés 37721 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 septembre 2023 342
21 sept. 2014 à 00:36
Ta question initiale est réglée. ..
Là. .tu poses une autre question. ..
C'est pas comme si tu avais déjà posté d'autres questions sur le forum. ..tu en connais les règles non ??

0
Rejoignez-nous