Partage
  • Partager sur Facebook
  • Partager sur Twitter

Aucune variable n'est transmise

problème connexion

    1 septembre 2006 à 12:19:47

    Bonjour,

    Voilà mon soucis, j'ai un formulaire qui doit transmettre $pseudo et $motdepasse par un POST, et le soucis ce trouve ici, si je remplsi mes champs, il ne prend JMS en compte mes valeurs qu ej'ai mise dans mes champs

    Voici le code : (Aucun message d'erreur)

    <?

    if(isset($pseudo) AND isset($motdepasse))
    {
    if($pseudo != NULL  AND $motdepasse != NULL ) // baah si y'a qqch !
    {
        // $_POST
      $pseudo = $_POST['pseudo'];
      $motdepasse = $_POST['motdepasse'];
       // Securité
      $pseudo = htmlentities($pseudo);
      $motdepasse = htmlentities($motdepasse);
      include ("test_total.php");
       // recup mdp de la BDD
      $res = mysql_query("SELECT * FROM inscription WHERE pseudo='$pseudo'") or die ( mysql_error() );
      $donnees = mysql_fetch_array($res);
        // mdp crypté ;)
      $motdepasse = md5($motdepasse);
      // si c ok, on crée la session, et si le membre n'est pas banni sinon...
      if ($motdepasse == $donnees['motdepasse'] && $donnees['statut'] != "B")
       {
         // création de la session..
         $_SESSION['pseudo'] = $pseudo;
         $_SESSION['id'] = $donnees['ID'];
         $_SESSION['statut'] = $donnees['statut'];
         $_SESSION['last'] = $donnees['last'];
         // mise à jour du ts
         $last = time();
         mysql_query("UPDATE inscription SET last='$last' WHERE pseudo='$pseudo'") or die ( mysql_error() );

          if (isset($memoriser)) // ici je mémorie le pseudo et le pass s'il le membre est ok
              {   // les cookies faut brouiller les pistes
                $pseudo = md5($pseudo);
                $motdepasse = md5($motdepasse);
                $expired = time() + (60*60*24*365); // dans 1 an

                  setcookie("nickname",$pseudo, $expired);
                  setcookie("password", $motdepasse, $expired);

              }
        header("Location: index.php?page=acc_membre");
       }
       else
       {                                        // A DECIDER !!
       header ("Location: index.php?erreur=login");
       }
     }
    }
    else
    {
    ?>
    <form method="post" action="connexion.php">
     <label for="pseudo">Pseudo : <br />
     <input type="text" name="pseudo" maxlength="16" />
     </label> <br />
     <label for="motdepasse">Mot de passe : <br />
     <input type="password" name="motdepasse" maxlength="16" /> <br />
     Mémoriser :  <input type="checkbox" name="memoriser" />
     <br /> <input type="submit" name="submit" value="Connexion..." />
    </form>
    <?
    }
    ?>


    Merci d'avance,

    Koller14
    • Partager sur Facebook
    • Partager sur Twitter
      2 septembre 2006 à 10:13:38

      Toujours personne ?

      L'erreur ne viendrait pas d'EasyPHP ?

      @+

      Koller14
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        2 septembre 2006 à 10:14:50

        c'est pas post plutot ?

        if (isset($_POST['pseudo']) AND isset($_POST['motdepasse'])


        • Partager sur Facebook
        • Partager sur Twitter
          2 septembre 2006 à 10:16:34

          +1 Les variables globales sont à Off par défaut désormais...
          • Partager sur Facebook
          • Partager sur Twitter
            2 septembre 2006 à 10:20:14

            Mouarf :s moi et mes variables :s

            Maintennant, c'est un problème de Header :

            warning: Cannot modify header information - headers already sent by On line 41 (le premier header)
            Parcontre, là, je n'ai de html avant ...

            @+

            Koller14
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              2 septembre 2006 à 10:29:06

              la aucune idée, mais t'es un drôle de garçon, tu crypte les pseudos en md5 :D , ca sert pas à grand chose ;)
              • Partager sur Facebook
              • Partager sur Twitter
                2 septembre 2006 à 10:37:05

                J'ai pas confiance avec les cookies ;) (l'utilisateur peut les modifier :p )
                et en cryptant le pseudo et le motdepasse, ça 'brouille' un peu les pistes pour ceux qui voudrait essayer un sale tour ...

                Mais bon, j'suis bien conscient que ça servira certainement à rien :p

                Voilou ^^ bon, revenons à mon header :s. Par contre, pourquoi ai-je un message d'erreur alors que j'ai pas de html avant l'header :s

                @+

                Koller14

                • Partager sur Facebook
                • Partager sur Twitter
                  2 septembre 2006 à 15:31:53

                  Il ne faut aucune sortie HTML avant une fonction qui modifie l'en-tête HTTP comme header ou setcookie. Le moindre espace où saut de ligne suffit ;) Vérifie bien qu'il n'y ait rien avant ta balise PHP <?php.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    2 septembre 2006 à 16:32:19

                    Non, il n'y a ABSOLUMENT rien avant mon <? même pas un saut de ligne, ni un espace ..

                    Merci d'avance

                    [Edit, pas d'autre idée ?] ?
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Aucune variable n'est transmise

                    × 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