IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Cookies] script de connection


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Par défaut [Cookies] script de connection
    bonjour, j'ai été amené à faire un système de membres et donc de connection pour mon site, le problème est qu'il ne marche pas sous IE, et j'ai beau tout tester, cela ne change rien

    voici mon script de login classic :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
    <?php // on vérifie que la variable $_SESSION['logged'] existe et vaut bien true.
     
     
     
     
     
    if (isset($_SESSION['logged']) && $_SESSION['logged'] == true)
     
    {
     
    	//Ensuite on vérifie que le membre est un admin
     
    	$retour = mysql_query('SELECT * FROM membres WHERE id =' . $_SESSION['id']);
     
    	$donnees = mysql_fetch_array($retour);
     
     
     
    		if ($donnees['admin'] == 1)
     
    		{
     
     
     
    blablabla
     
    		}   
     
     
     
    		elseif ($donnees['admin'] == 0)
     
    		{
     
     
     
    blablabla
     
    		}   
     
     
     
    }
     
    else
     
    {?>
     
    <form method="post" action="connexion.php">
     
    <img id="login1" src="images/login/login1.jpg" alt="login/pass"/>
     
    <input class="f_space" type="text" name="pseudo"  maxlength="30" />
     
    <img id="login2" src="images/login/login2.jpg" alt="login/pass"/>
     
    <input class="f_space" type="password" name="mot_passe" maxlength="30" />
     
    <a href="inscrire.php"><img src="images/login/signin.jpg" alt="sign in" /></a>				
    <input class="b_go" type="image" src="images/login/go.jpg" name="connexion" value="connexion" />
     
                    </form>
     
    <?php
     
    }
     
    ?>
    et ensuite le script de connexion :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
     
    <?php //Ne pas oublier de mettre le session_start()
     
    session_start(); ?>
     
    //Si la variable $_SESSION['logged'] n'existe pas, on la créée.
     
    if (!isset($_SESSION['logged'])) $_SESSION['logged'] = false; 
     
     
     
    echo'<p> Connection en cours ! </p>';
     
     
     
    //Ensuite on vérifie que les variables existent et contiennent quelque chose  smile 
     
    if (isset($_POST['pseudo'], $_POST['mot_passe']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']))
     
    {
     
       //Mesure de sécurité, notamment pour éviter les injections sql.
     
       $pseudo = htmlentities(addslashes($_POST['pseudo']));
     
       $mot_passe = htmlentities(addslashes($_POST['mot_passe']));
     
     
     
       //Hashage du mot de passe.
     
       $mot_passe = md5($mot_passe);
     
     
     
       //La requête qui compte le nombre de pseudos
     
       $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
     
     
     
       //La on regarde que le nombre est différent que zéro
     
       if (mysql_result($sql,0,'nb_pseudo') != 0)
     
       {
     
          //Sélection des informations.
     
          $sql_info = mysql_query("SELECT id, pass FROM membres WHERE pseudo='".$pseudo."'");
     
          $donnees_info = mysql_fetch_array($sql_info);
     
     
     
          //Si le mot de passe est le même.
     
          if ($donnees_info['pass'] == $mot_passe)
     
          {
     
                //On modifie la variable qui nous indique que le membre est connecté.
     
                $_SESSION['logged'] = true;
     
     
     
                //On créé les variables contenant des informations sur le membre.
     
               	$id = $donnees_info['id'];
     
     			$_SESSION['id'] = $id;
     
    			$pseudo = htmlentities(addslashes($_POST['pseudo']));
     
                $_SESSION['pseudo'] = $pseudo;
     
     
     
               	?>
     
                <head>
     
    			<meta http-equiv="refresh" content="1; url=index.php" />
     
    			</head>
     
    			<?php
     
          }
     
          else
     
          {
     
             echo '<p>Le password est incorrect !</p>';
     
          }
     
       }
     
       else
     
       {
     
          echo '<p>Le pseudo n\'existe pas !</p>';
     
       }
     
     
     
    }
     
    else
     
    {
     
       echo '<p>Veuillez remplir les champs !</p>';
     
    }
     
    ?>
    Sous mozilla impécable, sous IE, si j'echo le pseudo il le reconnait bien dans le script connexion, il me met connexion réussit mais quand il refresh, les champs de login sont tjs là sweatdrop !! j'ai essayé de virer le refresh, de changer les if et autre, mais aucun changement!!

    Quelqu'un aurait une idée pour m'aider merci!!

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Par défaut
    Salut.

    Ca marhe sous Mozilla et pas sur IE hein ?
    Moi je dirais que les sessions PHP fonctionnent avec les cookies (normal) et que le navigateur que vous testez en ce moment les refuse.

    C'est toujours une idée.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Par défaut
    hélas, celà ne fonctionne pas sous toutes les personnes utilisant IE!!! Et j'accèpte les cokkies, de toute manière, je fonctionne avec des sessions, celà utilise quand meme les cookies?

    je débute merci!! HELP ME !!!

  4. #4
    Membre Expert

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php //Ne pas oublier de mettre le session_start()
    
    session_start(); ?>
    
    //Si la variable $_SESSION['logged'] n'existe pas, on la créée.
    
    if (!isset($_SESSION['logged'])) $_SESSION['logged'] = false;
    Y a pas comme une erreur

    Regarde si y a pas d'autre petite fautes qui traines, et juste tu utilise quelle version de IE ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Par défaut
    ha, çà c'est une bête erreur de copie étant donné que mon session start est tout en haut de mon code, et qu'après il ya du html, donc non dans le script, cette erreur n'existe pas!!!

    J'utilise IE 5.5 je suppose ? enfin la version winXP service pack2.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Par défaut
    personne ici n'utilise n'est capable de m'aider? il y a pourtant tellement de site avec des espaces membres, je ne comprend pas que je ne trouve aucune aide!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 24/08/2006, 21h20
  2. Script si connecté à un domaine
    Par Zabriskir dans le forum Windows XP
    Réponses: 1
    Dernier message: 13/07/2006, 15h38
  3. Script de connection FTP
    Par 12_darte_12 dans le forum Linux
    Réponses: 12
    Dernier message: 08/11/2005, 16h28
  4. (MS DOS) Script de connections FTP
    Par Furius dans le forum Windows
    Réponses: 14
    Dernier message: 06/10/2005, 18h45
  5. script de connections
    Par Hacksign dans le forum Windows
    Réponses: 2
    Dernier message: 21/09/2005, 20h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo