Aller au contenu

formulaire et methode post


Guest Xavir

Sujets conseillés

G un problème tout à fait anormal !!! :blink:

Dans une page index.php, il y a :

<?
$error_level = $_GET['errors'];
if($error_level==1)
{
$errors = "<center><FONT FACE=\"Verdana\" COLOR=\"red\">Codes invalides !!!</FONT></center>";
}

?>

<HTML>
<BODY bgcolor="black" text="black" link="blue" vlink="purple" alink="red">
<BR><BR><BR><BR><? echo $errors; ?><BR><BR><BR><BR>

<CENTER><FORM action="index2.php" method="post">
<P><fieldset style="width:165; text-align:center; padding:5; color: white;">
<legend><B><FONT FACE="Verdana" SIZE="2" COLOR="#335EA8">Codes required </FONT></B></legend>
Code 1 :
<INPUT type="password" size="10" maxlength="10" name="aa"><BR>
Code 2 :
<INPUT type="password" size="10" maxlength="10" name="ab"><BR>
Code 3 :
<INPUT type="password" size="10" maxlength="10" name="ba"><BR>
Code 4 :
<INPUT type="password" size="10" maxlength="10" name="bb"><BR>
</fieldset><BR><BR><INPUT type="submit" value="   OK   ">  <INPUT type="reset" value="Reset"></P>
</FORM>
</CENTER>
</BODY>
</HTML>

Et dans index2.php :

<?
$pd1 = $_POST['aa'];
$pd2 = $_POST['ab'];
$pd3 = $_POST['ba'];
$pd4 = $_POST['bb'];

if($pd1=="mot_de_passe")
{
if($pd2=="mot_de_passe")
{
 if($pd3=="mot_de_passe")
 {
  if($pd4=="mot_de_passe")
  {
   //Ce qui a à faire     }
  else
  {
  err();
  }
 }
 else
 {
 err();
 }
}
else
{
err();
}
}
else
{
err();
}


function err()
{
?>
<HTML>
<BODY>
<FONT FACE="Verdana" COLOR="red">
<BR><BR><BR><BR><BR><BR><BR><BR>
<B>Codes Invalides</B><BR><BR><? echo $pd1." ".$pd2." ".$pd3." ".$pd4; ?><BR><INPUT TYPE="button" onclick="history.go(-1)" VALUE="Retour">
</FONT>
</BODY>
</HTML>
<?
}

?>

Et à la fin de index2.php, quand y a "<? echo $pd1." ".$pd2." ".$pd3." ".$pd4; ?>", Il ne m'affiche que des espaces !!! Ce qui voudrait dire qu'il récupère la variable et qu'elle vaut rien !!! Je comprend pas !!!

Merci d'avance !

Modifié par Xavir
Lien vers le commentaire
Partager sur d’autres sites

Les variables $pd sont des variables LOCALES ne sont pas disponibles dans la fonction err().

2 possibilité :

soit tu utilise le tableau $_POST (qui est GLOBAL) dans la fonction err() :

function err()
{
?>
<HTML>
<BODY>
<FONT FACE="Verdana" COLOR="red">
<BR><BR><BR><BR><BR><BR><BR><BR>
<B>Codes Invalides</B><BR><BR><? echo $_POST['aa']." ".$_POST['ab']." ".$_POST['ba']." ".$_POST['bb']; ?><BR><INPUT TYPE="button" onclick="history.go(-1)" VALUE="Retour">
</FONT>
</BODY>
</HTML>
<?
}

soit tu définie les variables $pd comme globales dans err() : :

function err()
{
global $pd1,$pd2,$pd3,$pd4;
?>
<HTML>
<BODY>
<FONT FACE="Verdana" COLOR="red">
<BR><BR><BR><BR><BR><BR><BR><BR>
<B>Codes Invalides</B><BR><BR><? echo $pd1." ".$pd2." ".$pd3." ".$pd4; ?><BR><INPUT TYPE="button" onclick="history.go(-1)" VALUE="Retour">
</FONT>
</BODY>
</HTML>
<?
}

Modifié par jeroen
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...