Problème avec un variable dans mon formulaire

Escalios Messages postés 3 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 27 novembre 2008 - 27 nov. 2008 à 21:10
gibozsec Messages postés 318 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 11 mars 2010 - 27 nov. 2008 à 21:50
Bon voila j'ai un problème avec ma variable $mail_ok qui m'affiche comme étant pas identifier :

Notice: Undefined variable: mail_ok in /home/gueradeos/public_html/verification.php on line 114
Soit cette ligne :
 if ( (isset($mail_ok)) && ($mail_ok == TRUE) &&
($code_ok TRUE) && ($pseudo_ok TRUE) && ($ip_ok
TRUE ) )

Voila mon code php

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- Date de création: 17/11/2008 -->
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  <meta name="description" content="Site de jeu gratuit avec plein de cadeaux à gagner" />
    <meta name="keywords" content="Site de jeu gratuit avec plein de cadeaux à gagner" />
    <link type="text/css" rel="stylesheet" href="CSS/style_inscription.css" />
<title>Inscription</title>
</head>




 

 
 
 

 
   
 
     
    

     

<?php

if( (isset($_POST['pseudo'],$_POST['code'], $_POST['code_confirmation'],$_POST['mail'], $_POST['parrain'])) && (!empty($_POST['pseudo'])) && (!empty($_POST['code'])) && (!empty($_POST['code_confirmation'])) && (!empty($_POST['mail'])))
{
// on récupére les variables
$pseudo =  htmlentities($_POST['pseudo']);
$code = md5($_POST['code']);
$code_confirmation = md5($_POST['code_confirmation']);
$mail =  htmlentities($_POST['mail']);
$parrain =  htmlentities($_POST['parrain']);
$ip = $_SERVER['REMOTE_ADDR'] ;
//Maintenant, on se connecte à la base de données
mysql_connect("localhost", "heyng", "87598") or die(mysql_error());
mysql_select_db("gggrr");
       if(isset($pseudo))
       {            $donnees_pseudo mysql_query('SELECT COUNT(*) AS membre_pseudo FROM membre_inscrit WHERE membre_pseudo "'.$pseudo.'"')or die(mysql_error());
            $nombre_pseudo = mysql_fetch_array($donnees_pseudo);                 
                  }
           if ((strlen($pseudo) > 4 ) && (strlen($pseudo)< 25))
           {
               $pseudo1 == TRUE ;
               $pseudo_erreur1 = "";
                 }
           else
           {
               $pseudo_erreur1 = "Ton pseudo doit faire entre 4 et 25 caractères ";
                 }
       if ((isset($nombre_pseudo)) && ($nombre_pseudo['membre_pseudo'] == 0)) 
       {
               $pseudo2 == TRUE ;
               $pseudo_erreur2 = "";
                 }
       else
       {
               $pseudo_erreur2 = "Ton pseudo est déja utilisé "  ;
                 }       if (($pseudo1 TRUE ) && ($pseudo2 TRUE))
       {
              $pseudo == TRUE ;
                 }
//Vérification du mdp

       if ((isset($code)) && (isset($code_confirmation)) &&  ($code == $code_confirmation) )
       {
              $code_ok == TRUE ;
              $code_erreur = "";
                 }
       else
       {
              $code_erreur = "Ton code secret et ta confirmation ne sont pas les mêmes " ;
                 }

//Vérification de l'adresse email
       if (isset($mail))
       {
//Il faut que l'adresse email n'ait jamais été utilisée
              $donnees_mail mysql_query('SELECT COUNT(*) AS membre_mail FROM membre_inscrit WHERE membre_mail "'.$mail.'"')or die(mysql_error());
              $nombre_mail = mysql_fetch_array($donnees_mail);
        
             if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $mail))
             {
              $mail_erreur1 = "";
                    if ((isset($nombre_mail)) && ($nombre_mail['membre_mail'] == 0))
                    {
                     $mail_erreur2 = "";
                     $mail_ok == TRUE ;
                           }
                     else
                    {
                     $mail_erreur2 = "Ton e-mail n'est pas valide" ;
                     $mail_erreur2 = "Ton e-mail est déja utilisé par quelqu'un ";
                          }
              }
        }
        if (isset($ip))
        {               $donnees_ip mysql_query('SELECT COUNT(*) AS membre_ip FROM membre_inscrit WHERE membre_ip "'.$ip.'"')or die(mysql_error());
               $nombre_ip = mysql_fetch_array($donnees_mail);
                if ((isset($nombre_ip)) || ($nombre_ip['membre_ip'] < 2))
                {
                     $ip_ok == TRUE ;
                     $ip_erreur = "";                   
                         }
                else
                {
                $ip_erreur = "Le multicompte est interdit" ;
                         }
        }        if ( (isset($mail_ok)) && ($mail_ok TRUE) && ($code_ok TRUE) && ($pseudo_ok == TRUE) && ($ip_ok == TRUE ) )
        {  
               
                 $_SESSION['pseudo'] = $pseudo ;
                 $_SESSION['rang'] = $rang ; 
                 $_SESSION['galions'] = $galions ;
                 $rang = 1 ;
                 $galions = 0 ;
  
                 mysql_query('INSERT INTO membre_inscrit VALUES ("", "'.$ip.'", "'.$pseudo.'", "'.$code.'", "'.$mail.'", "'.$parrain.'","'.$rang.'" ,"'.$galions.'"  ');
 
 ?>
 

       Bienvenue ! Tu est maintenant inscrit sur GUERADEOS
       Retour a l'index :[index.php BON JEUX ]

<?php
        }

        else
        {
                 echo $ip_erreur.'
';
                 echo $mail_erreur1.'
';
                 echo $mail_erreur2.'
';
                 echo $code_erreur.'
';
                 echo $pseudo_erreur1.'
';
                 echo $pseudo_erreur2.'
';
                 echo 'Clique [insciption.php ici] pour recommencer' ;
                 }
mysql_close();
}

?>

     

   


 

 

Jeux Gratuits sans obligation d'achat - Copyright© 2008 GUERADEOS- Tous droits réservés 

 

</html>

2 réponses

Escalios Messages postés 3 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 27 novembre 2008
27 nov. 2008 à 21:12
Dsl Merci d'avance ^^
0
gibozsec Messages postés 318 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 11 mars 2010
27 nov. 2008 à 21:50
BOnjour,

Dans ton code tu as :

$mail_ok == TRUE ;

avant la ligne que tu indique comme étant l'erreur. C'est là que se situe le problème. Tu fais une comparaison sur une variable qui n'a pas été définie avant.

D'ailleurs vu que ce n'est pas dans un test tu as du faire une faute de frappe.

PS : Je n'ai pas lu tout le code mais j'ai aperçu plein de
au début du fichier. Utilise plutôt les propriétés CSS pour décaler un div (margin-top par exemple).

Bonne continuation.

Grrrrrrrrrrr
0
Rejoignez-nous