Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec $_GET

    9 mai 2007 à 21:09:04

    Bonjour j'ai un problème avec $_GET

    Voici les erreur:

    Notice: Use of undefined constant connection_f - assumed 'connection_f' in d:\site\stat\modules\membres\index.php on line 7

    Notice: Use of undefined constant connexion_a - assumed 'connexion_a' in d:\site\stat\modules\membres\index.php on line 37

    Notice: Use of undefined constant confirmation - assumed 'confirmation' in d:\site\stat\modules\membres\index.php on line 118

    Notice: Use of undefined constant inscription_f - assumed 'inscription_f' in d:\site\stat\modules\membres\index.php on line 159

    Notice: Use of undefined constant inscription_a - assumed 'inscription_a' in d:\site\stat\modules\membres\index.php on line 182

    Notice: Use of undefined constant membres - assumed 'membres' in d:\site\stat\modules\membres\index.php on line 261

    Mais ça m'affiche comme même la partie comme si c'est membres ça m'affiche :
    Bonjour pimi (je suis identifier)
    Déconnexion

    Et regarder mon code regarder seulement le debut:

    <?php
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Connextion Formulaire---------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    if ($_GET['page'] == connection_f)
    {
    ?>
    <form method="post" action="connexion.php">
            <h5>Se connecter</h5>
            <p>
                    <label for="pseudo">Pseudo : </label><br />
                    <input type="text" name="pseudo" id="pseudo" />
            </p>
            <p>
                    <label for="code">Mot de passe : </label><br />
                    <input type="password" name="mot_passe" id="mot_passe" />
            </p>
                    <p>
                    <label for="souvenir">Se souvenir de moi?</label><br />
                    <input type="radio" name="souvenir" value="oui" checked="checked" /> Oui
                    <input type="radio" name="souvenir" value="non" /> Non
                    </p>
            <input type="submit" value="Connexion" />
    </form>
    <center><h4>Un problème?</h4></center>
    <a href="inscription.html">S'inscrire</a><br />
    <a href="???????????????">Mot de passe oublié</a>
    <?php
    }
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Connextion Action -------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == connexion_a)
    {
    include('
    fonction.php');
    connexionbdd();
    //Si la variable $_SESSION['
    logged'] n'existe pas on la créée.
    if (isset($_COOKIE['pseudo']))
    {
    header("location: membres.php");
    }
    else
    {
            //Vérification des autres variables.
            if (isset($_POST['pseudo'],$_POST['mot_passe']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']))
            {
                    //Vérification du pseudo.
                    $pseudo = htmlspecialchars($_POST['pseudo']);
                    $mot_passe = htmlspecialchars($_POST['mot_passe']);
                   
                    //Requête comptant le nombre de pseudos $_POST['pseudo']
                    $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
                   
                    //Si le pseudo existe.
                    if (mysql_result($sql,0,'nb_pseudo') == 1)
                    {
                            //Vérification du mot de passe
                            //Information sur le compte du membre.
                            $sql_infos = mysql_query("SELECT mot_passe, confirmation FROM membres WHERE pseudo='".$pseudo."'") or die(mysql_error());
                            $donnees = mysql_fetch_array($sql_infos);
                           
                            //Hashage du mot de passe.
                            $mot_passe_hash = md5($mot_passe);
                           
                            //Comparaison du mot de passe.
                            if ($mot_passe_hash == $donnees['mot_passe'])
                            {
                                    //On vérifie que le compte est confirmé.
                                    //Si $donnees['confirmation'] vaut 1.
                                    if ($donnees['confirmation'] == 1)
                                    {
                                            if (isset($_POST['souvenir']) && $_POST['souvenir'] == 'oui')
                                            {
                                                //Temps d'expiration des cookies (1 an).
                                                $expire = time() + 3600 * 24 * 365;

                                                setcookie('pseudo', $pseudo, $expire);
                                                setcookie('mot_passe', $mot_passe_hash, $expire);
                                           
                                            //Redirection vers la page membre.
                                            header("location: membres.php");
                                            }
                                                                                    else
                                            {
                                                //Temps d'expiration des cookies (1 heure).
                                                $expire2 = time() + 3600;

                                                setcookie('pseudo', $pseudo, $expire2);
                                                setcookie('mot_passe', $mot_passe_hash, $expire2);
                                           
                                            //Redirection vers la page membre.
                                            header("location: membres.php");
                                            }
                                                                                    echo 'erreur';
                                    }
                                    else
                                            echo 'Erreur : le compte n\'est pas confirmé !';
                            }
                            else
                                    echo '
    Erreur : le mot de passe est incorrect !';
                    }
                    else
                            echo '
    Erreur : le pseudo n\'existe pas !';
            }
            else
                    echo 'Erreur : veuillez remplir tous les champs !';
    }
    }
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Confirmation ---------- ---------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['page'] == confirmation)
    {
    //Connextion Basse de Donnée
    include('fonction.php');
    connexionbdd();
    // On récupère le pseudo dans l'url
    $pseudo = $_GET['pseudo'];
    // On vérifie si le code de confirmation est bien celui du Pseudo
    $reponse = mysql_query("SELECT code, confirmation FROM membres WHERE pseudo='" .$_GET['pseudo']. "'") or die (mysql_error());
    $donnees = mysql_fetch_array($reponse);

    if ($donnees['code'] == $_GET['code'])
    {
            if ($donnees['confirmation'] == 0)
                    {
                            mysql_query("UPDATE membres SET confirmation='1' WHERE pseudo='" .$_GET['pseudo']. "'");
                            ?>
                            Votre compte vient d'être activé, vous pouvez dés à présent vous connecter au site.<br />
                            Vous allez être redirigé dans 2s.
                            <?php
                    }
                    else
                    {
                    ?>
                    Erreur : votre compte est déjà activé.
                <?php
                    }
    }
    else
    {
    ?>
    Erreur : Ce n'
    est pas le bon code d'activation
    <?php
    }
    mysql_close();
    }
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Inscription Formulaire---------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == inscription_f)
    {
    ?>
    <center><h1>Inscription</h1></center>
    <form method="post" action="inscription.php">
            <label for="utilisateur">Pseudo (entre 3 et 35 caractères) : </label>
            <input type="text" name="pseudo" id="pseudo" /><br />

            <label for="code1">Mot de Passe (min 4 caractères) : </label>
            <input type="password" name="mot_passe" id="mot_passe" /><br />
             
                    <label for="mail">Adresse e-mail (servira pour la confirmation du compte) : </label>
                    <input type="text" name="email" id="email" /><br />
                   
            <input type="submit" value="Valider" /><br/>
    </form>
    <?php
    }
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Inscription Action -------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == inscription_a)
    {
    include('
    fonction.php');
    connexionbdd();
            //Si les variables contenant le pseudo, le mot de passe et l'
    email existent et contiennent quelque chose.
            if (isset($_POST['pseudo'], $_POST['mot_passe'], $_POST['email']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']) && !empty($_POST['email']))
            {
                    //Si le pseudo est supérieur à 3 caractères et inférieur à 35 caractères.
                    if (strlen(trim($_POST['pseudo'])) > 2 && strlen(trim($_POST['pseudo'])) < 35)
                    {
                            //Si le mot de passe est supérieur à 4 caractères.
                            if (strlen(trim($_POST['mot_passe'])) > 4)
                            {
                                    //Mesure de sécurité.
                                    $pseudo = htmlspecialchars($_POST['pseudo']);
                                    $mot_passe = htmlspecialchars($_POST['mot_passe']);
                                    $email = htmlspecialchars($_POST['email']);
                                                                    $mot_passe2 = htmlspecialchars($_POST['mot_passe']);

                                    //On vérifie que le pseudo n'existe pas.
                                    $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
                                    if (mysql_result($sql, 0, 'nb_pseudo') == 0)
                                    {
                                         //Hashage du mot de passe avec md5().
                                         $mot_passe = md5($mot_passe);

                                         //Génération du code de confirmation.
                                         $lettres_chiffres = 'abcdefghijklmnopqrstuvwxyz0123456789';
                                         $lettres_chiffres_melanges = str_shuffle($lettres_chiffres);
                                         $code_confirmation = substr($lettres_chiffres_melanges, 1, 10);
                                                                            
                                         $headers = 'MIME-Version: 1.0' . "\n"; // Version MIME
                                         $headers .= 'Content-type: text/html; charset=ISO-8859-1'."\n"; // l'en-tete Content-type pour le format HTML
                                         $headers .= 'Reply-To: '.$email."\n"; // Mail de reponse
                                         $headers .= 'From: '.$email."\n"; // Expediteur
                                   
                                         //Envoi du mail de confirmation.
                                         $message = '
                                    Bonjour '
    .$pseudo.' <br />
                                    Vous venez de vous inscrire sur "Stat-AirSoft" et pour valider votre inscription,
                                                                    vous devez cliquer sur le lien suivant : <a href="confirmation.php?code='
    .$code_confirmation.'&pseudo='.$pseudo.'">Cliquez ici</a><br />
                                                                    Vos identifiant sont : <br />
                                                                    Pseudo : '
    .$pseudo.'<br />
                                                                    Mot de passe : '
    .$mot_passe2.'
                                        '
    ;
                                   
                                        //Si le mail a été envoyé on peut enregistrer le membre
                                        if (mail($email, 'Confirmation de l\'inscription sur Stat-Airsoft', $message, $headers))
                                        {   
                                             //On éxécute la requête qui enregistre un nouveau membre.
                                             mysql_query("INSERT INTO membres VALUES ('
    ".$pseudo."', '".$mot_passe."', '0', '".$code_confirmation."', '".$email."', '0')");
                                             echo '
    Message : votre compte a bien été créé ! Un e-mail vient de vous être envoyé contenant un lien de confirmation de votre inscription.';
                                       }
                                       else
                                       {
                                             echo '
    Erreur : echec lors de l\'envoi du mail ! veuillez vous ré-inscrire';
                                       }
                                   }
                                   else
                                       echo 'Erreur : le pseudo existe déjà !';
                            }
                            else
                                    echo 'Erreur : le mot de passe est trop court !';
                    }
                    else
                            echo 'Erreur : le pseudo est soit trop court, soit trop long !';
            }
            else
                    echo 'Erreur : vous avez oublié d\'entrer votre pseudo ou votre mot de passe ou votre adresse email !';


    //Déconnection de la base de données.
    mysql_close();
    }
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Membres ------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == membres)
    {
    //On vérifie que le membre est connecté.
    if (isset($_COOKIE['
    pseudo']))
    {
       //Mettez ici votre code xhtml (et php)
       //Exemple : affichage du lien de déconnection et du pseudo.
       echo '
    Bonjour '.$_COOKIE['pseudo'].'<br/><a href="deconnexion.php">Déconnexion</a>';
    }
    else
    {
    ?>
       <div id="erreur">
            Erreur :<br />
            <strong>Vous devez vous connecter pour afficher cette page.</strong>
            <br /><br />
            <a href="Javascript:history.back()">Retour</a>
        </div>
    <?php
    }
    }
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Retrouver son MDP Formulaire ---------------------------------------------------------------------------------------------------------------------------------------
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == retrouversonmdp_f)
    {
    ?>
    <h1>Retrouver son Mot de Passe</h1>
                <form method="post" action="retrouversonmdp.php">
                            <label for="email">Votre email : <input type="text" name="email" id="email" /></label>
                            <input type="submit" name="Tête en l'
    air" value="Tête en l'air" />
                    </form>
    <?php
    }
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Retrouver son MDP Action ----- ---------------------------------------------------------------------------------------------------------------------------------------
    // -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == retouversonmdp_t)
    {
    include('
    fonction.php');
    connexionbdd();
    if (isset($_POST['
    email']) && !empty($_POST['email']))
     {
      //Mesure de sécurité.
      $email = htmlspecialchars($_POST['
    email']);
     
      //On vérifie que le compte existe .
      $sql = mysql_query("SELECT COUNT(*) AS nb_compte FROM membres WHERE email='
    ".$email."'");
      if (mysql_result($sql, 0, '
    nb_compte') == 1)
       {
        //Selectione le nombre de tentative
        $reponse=mysql_query ("SELECT tentative FROM membres WHERE email='
    ".$email."'");
            $donnees = mysql_fetch_array($reponse);
         if ($donnees['
    tentative']==0)
              {
                //Génération du code du mdp.
            $lettres_chiffres = '
    abcdefghijklmnopqrstuvwxyz0123456789';
            $lettres_chiffres_melanges = str_shuffle($lettres_chiffres);
            $mdp = substr($lettres_chiffres_melanges, 1, 10);
                   
                    $headers = '
    MIME-Version: 1.0' . "\n"; // Version MIME
            $headers .= '
    Content-type: text/html; charset=ISO-8859-1'."\n"; // l'en-tete Content-type pour le format HTML
            $headers .= 'Reply-To: '.$email."\n"; // Mail de reponse
            $headers .= 'From: '.$email."\n"; // Expediteur
       
            //Hashage du mot de passe avec md5().
            $mot_passe = md5($mdp);
           
                //Envoi du mail de confirmation.
            $message = 'Bonjour <br />
            Votre nouveau mdp est '
    .$mdp.' ';
                   
                    //Si le mail a été envoyé on peut enregistrer le membre
            if (mail($email, 'Nouveau mdp sur Stat-AirSoft', $message))
             {   
             //On éxécute la requête qui rajoute une tentative et qui change l'ancien mdp.
            mysql_query ("UPDATE mot_passe='".$mot_passe."', tentative='1' FROM membres WHERE email='".$email."'");
            echo 'Message : Un e-mail vient de vous être envoyé contenant le nouveau mdp';
             }
             else
               echo 'Erreur : echec lors de l\'envoi du mail ! veuillez ré-éssayer';
          }
             else
               echo '
    Erreur : Déja une demande de reinialisation de mot de passe';
      }
      else
            echo '
    Erreur : Pas de compte connu sous cette email';
     }
     else
            echo '
    Erreur : Remplis les champs';
    //Déconnection de la base de données.
    mysql_close();
    }
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Déconnection -------------------------------------------------------------------------------------------------------------------------------------------------
    // ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    //  -----------------------------------------------------------------------------------------------------------------------------------------------------------------
    elseif ($_GET['
    page'] == deconnexion)
    {
    //Temps d'
    expiration des cookies (1 seconde).
    $expire = time() + 1;
    setcookie('pseudo', deconnexion, $expire);
    setcookie('mot_passe', deconnexion, $expire);   
    }

    else
    {
    echo 'Erreur';
    }
    ?>


    • Partager sur Facebook
    • Partager sur Twitter
      9 mai 2007 à 21:22:27

      Est-ce que c'est une URL du type: ?page=connexion_f??

      Si oui, mets 'connexion_f' car c'est un string. ;)
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        9 mai 2007 à 21:37:25

        un copier coller de l'espace membre simple...

        sinon remplace les
        if ($_GET['page'] == connection_f)


        par

        if (isset($_GET['page']) == connection_f )
        • Partager sur Facebook
        • Partager sur Twitter
          9 mai 2007 à 21:40:21

          if (isset($_GET['page']) == 'connection_f' )
          • Partager sur Facebook
          • Partager sur Twitter

          Problème avec $_GET

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown