Problème de formulaire de recherche

Résolu
msi79
Messages postés
501
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
7 juin 2022
- 20 sept. 2014 à 23:50
jordane45
Messages postés
35833
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 juillet 2022
- 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
14944
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
4 juillet 2022
161
20 sept. 2014 à 23:58
echo extract($_POST);

Où est le nom du champ du formulaire ?
0
jordane45
Messages postés
35833
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 juillet 2022
358
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
501
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
7 juin 2022
1
21 sept. 2014 à 00:04
voici ce que j'obtiens:
Array ( [search] => 0220 [Submit] => SEARCH )
0
jordane45
Messages postés
35833
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 juillet 2022
358
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
501
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
7 juin 2022
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
35833
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 juillet 2022
358
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