Verification d'un formulaie

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Verification d'un formulaie

par NoNos » 23 mai 2005, 15:03

La variable $nom lors de l'affichage était la pour effectuer un test et savoir si $nom avait été passé en paramètre.
Je vais essayer le truc que vous me dites en rentrant

par Cyrano » 23 mai 2005, 14:06

Essaye donc comme ceci: ouckileou l'a souligné, tu ne récupères pas l'envoi du formulaire, donc ta variable est vide, elle n'est même pas initialisée donc tu devrais même avoir une erreur du type undefined variable $nom etc...
<?
session_start();
if(isset($_POST['nom']))
{
    $nom = $_POST['nom'];
}
else
{
    $nom = "";
}

function afficher_form($nom)
{
    echo "test ".$nom;
?>
   <form action="port.php" method="post">
        Nom : <input type="text" value="<? echo $nom ?>" name="nom">
      <input type="submit" value="Soumettre" name="soumis">
      </form>
<?
}
function verif_form($nom)
{
    echo $nom." sdsd";
    if(!$nom )
    {
        if (!$nom)
        {
            echo "<tr><td align=\"center\">Veuillez saisir votre Nom</td></tr>";
        }
        afficher_form($nom);
    }
    else
    {
        info_saisie($nom);
    }
}

function info_saisie($nom)
{
    echo "Nom : ".$nom."&nbsp;Prenom : ".$prenom."&nbsp;E-Mail : ".$mail."<br><br>
    <form action=\"port.php?nom=".$nom."\" method=\"get\" name=\"valid\" target=\"_self\">
         <input type=\"submit\" value=\"Confirmer\" name=\"confirm\">
         </form>";
}
?>
<link href="style.css" rel="stylesheet" type="text/css">


<?
if (!$confirm)
{
    if (!$soumis)
    {
        echo 'ici';
        afficher_form("", "", "", "", "", "", "");
    }
    else
    {
        echo 'la '. $nom; //le nom ne s'affiche pas
        verif_form($nom);
    }
}
else
{
    echo "now";
    session_register('nom');
}
?> 

par ouckileou » 23 mai 2005, 13:35

c'est un peu bizarre comme fonctionnement

d'où te vient la variable $nom à l'affichage de ton formulaire

de plus, il n'y aucun test permettant de savoir quelle opération effectuer à chaque fois c'est normal

mais bon déjà : une variable récupérée d'un formulaire se récupère comme ceci :
$nom = $_GET['nom']; // si la methode du formulaire est GET
$nom = POST['nom']; // si la methode du formulaire est POST

Verification d'un formulaie

par NoNos » 23 mai 2005, 13:18

Salut
Depuis ce matin je me prend la tete avec le verification d'un formulaire les variables ne passent pas comme je veux et doc ne sont pas utilisable dans la suite du coe je ne comprend pas pourquoi
Voila le code un peu résumé :

Code : Tout sélectionner

<? session_start(); function afficher_form($nom){ echo "test ".$nom; ?> <form action="port.php" method="post"> Nom : <input type="text" value="<? echo $nom ?>" name="nom"> <input type="submit" value="Soumettre" name="soumis"> </form> <? } function verif_form($nom){ echo $nom." sdsd"; if(!$nom ){ if (!$nom) {echo "<tr><td align=\"center\">Veuillez saisir votre Nom</td></tr>";} afficher_form($nom); } else { info_saisie($nom); } } function info_saisie($nom){ echo "Nom : ".$nom."&nbsp;Prenom : ".$prenom."&nbsp;E-Mail : ".$mail."<br><br>"; <form action=\"port.php?nom=".$nom."\" method=\"get\" name=\"valid\" target=\"_self\"> <input type=\"submit\" value=\"Confirmer\" name=\"confirm\"> </form>"; } ?> <link href="style.css" rel="stylesheet" type="text/css"> <? if (!$confirm){ if (!$soumis){ echo 'ici'; afficher_form("", "", "", "", "", "", ""); } else{ echo 'la '. $nom; //le nom ne s'affiche pas verif_form($nom); } } else { echo "now"; session_register('nom'); } ?>
Le problèe arrive très vite, on affiche bien le formulaire mais quand on confirme lors de la verif le $nom n'est pas passé en paramère