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

PHP & Base de données Discussion :

Session non trouvée


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 24
    Par défaut Session non trouvée
    Bonjour;
    config.php
    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
     
    <?php
    //On demarre les sessions
    session_start();
     
    /******************************************************
    ----------------Configuration Obligatoire--------------
    Veuillez modifier les variables ci-dessous pour que l'
    espace membre puisse fonctionner correctement.
    ******************************************************/
     
    //On se connecte a la base de donnee
    mysql_connect('localhost', '****', '****');
    mysql_select_db('asp-php');
     
    //Email du webmaster
    $mail_webmaster = 'blabla@hotmail.fr';
     
    //Adresse du dossier de la top site
    $url_root = 'http://monsite/';
     
    /******************************************************
    ----------------Configuration Optionelle---------------
    ******************************************************/
     
    //Nom du fichier de laccueil
    $url_home = 'index.phtml';
     
    //Nom du design
    $design = 'default';
    ?>

    mon index.phtml

    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
     
    <?php
    include('config.php');
    ?>
    <!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">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
            <title>Connection</title>
        </head>
        <body>
        	<div class="header">
            	<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
    	    </div>
    <?php
    //Si lutilisateur est connecte, on le deconecte
    if(isset($_SESSION['username']))
    {
    	//On le deconecte en supprimant simplement les sessions username et userid
    	unset($_SESSION['username'], $_SESSION['userid']);
    ?>
    <div class="message">Vous avez bien &eacute;t&eacute; d&eacute;connect&eacute;.<br />
    <a href="<?php echo $url_home; ?>">Accueil</a></div>
    <?php
    }
    else
    {
    	$ousername = '';
    	//On verifie si le formulaire a ete envoye
    	if(isset($_POST['username'], $_POST['password']))
    	{
    		//On echappe les variables pour pouvoir les mettre dans des requetes SQL
    		if(get_magic_quotes_gpc())
    		{
    			$ousername = stripslashes($_POST['username']);
    			$username = mysql_real_escape_string(stripslashes($_POST['username']));
    			$password = stripslashes($_POST['password']);
    		}
    		else
    		{
    			$username = mysql_real_escape_string($_POST['username']);
    			$password = $_POST['password'];
    		}
    		//On recupere le mot de passe de lutilisateur
    		$req = mysql_query('select password,id from users where username="'.$username.'"');
    		$dn = mysql_fetch_array($req);
    		//On le compare a celui quil a entre et on verifie si le membre existe
    		if($dn['password']==$password and mysql_num_rows($req)>0)
    		{
    			//Si le mot de passe es bon, on ne vas pas afficher le formulaire
    			$form = false;
    			//On enregistre son pseudo dans la session username et son identifiant dans la session userid
    			$_SESSION['username'] = $_POST['username'];
    			$_SESSION['userid'] = $dn['id'];
     
     
    ?>
    <div class="message">Vous avez bien &eacute;t&eacute; connect&eacute;. Vous pouvez acc&eacute;der &agrave; a votre espace de travail.<br />
    <meta http-equiv="refresh" content="5;URL=http://monsite/index2.php">
    Redirection vers monsite dans <span id="seconds">5</span>.
    <script>
          var seconds = 5;
          setInterval(
            function(){
              document.getElementById('seconds').innerHTML = --seconds;
            }, 1000
          );
        </script>
    <?php
    		}
    		else
    		{
    			//Sinon, on indique que la combinaison nest pas bonne
    			$form = true;
    			$message = 'La combinaison que vous avez entr&eacute; n\'est pas bonne.';
    		}
    	}
    	else
    	{
    		$form = true;
    	}
    	if($form)
    	{
    		//On affiche un message sil y a lieu
    	if(isset($message))
    	{
    		echo '<div class="message">'.$message.'</div>';
    	}
    	//On affiche le formulaire
    ?>
    <div class="content">
        <form action="index.phtml" method="post">
     
            <div class="center">
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" value="<?php echo htmlentities($ousername, ENT_QUOTES, 'UTF-8'); ?>" /><br />
                <label for="password">Mot de passe:</label><input type="password" name="password" id="password" /><br />
                <input type="submit" value="Connexion" />
    		</div>
        </form>
    </div>
    <?php
    	}
    }
    ?>
     
     
     
    	</body>
    </html>


    mon index2.php:
    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
     
    <?php
    $_SESSION['username'] = $_POST['username'];
    echo $username;
     
    if(empty($_SESSION['username'])) 
    {?>
    <div class="message">Pour acc&eacute;der &agrave; cette page, vous devez &ecirc;tre connect&eacute;.<br />
     
    <?php
    }else{
    ?>
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <title>monsite</title>
    <!--<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />-->
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <link href="style.css" rel="stylesheet" type="text/css" />
    <link href="layout.css" rel="stylesheet" type="text/css" />
    <script src="js/jquery.js" type="text/javascript"></script>
    <script src="js/cufon-yui.js" type="text/javascript"></script>
    <script src="js/cufon-replace.js" type="text/javascript"></script>
    <script src="js/DIN_1451_Mittelschrift_Alt_400.font.js" type="text/javascript"></script>
     
    </head>
     
    <body id="page1">
      <!-- header -->
      <div id="header">
    ...................
    </body>
    </html>
    <?php
    }
    ?>

    le login de l utilisateur est Ok, mais en voulant acceder a l'espace membres j'ai toujours
    "Pour accéder à cette page, vous devez être connecté."

    Merci pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    en plus d'avoir oublié de poser clairement une question,
    tu as oublié de dire : "je vous balance tout mon code, débrouillez-vous avec ca"

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 24
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Bonjour,
    en plus d'avoir oublié de poser clairement une question,
    tu as oublié de dire : "je vous balance tout mon code, débrouillez-vous avec ca"
    euh nn

    je pensais etre claire , mon index2.php est inaccessbile pour tout les internautes pourtant il faut qu'il soit accessible uniquement aux membres inscrits
    ,j ai partagé les 3 codes qui sont en relation avec eux memes
    mon probleme est comment rendre index2.php accesible uniqument aux membres inscrits

    merci

  4. #4
    Invité
    Invité(e)
    Par défaut
    1/ on ne pré-remplis pas les champs d'un formulaire d'authentification !
    remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" value="<?php echo htmlentities($ousername, ENT_QUOTES, 'UTF-8'); ?>" /><br />
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" /><br />
    2/ c'est quoi, ca ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    $_SESSION['username'] = $_POST['username'];
    echo $username;
    pas de session_start() non plus ?

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 24
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    1/ on ne pré-remplis pas les champs d'un formulaire d'authentification !
    remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" value="<?php echo htmlentities($ousername, ENT_QUOTES, 'UTF-8'); ?>" /><br />
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" /><br />
    2/ c'est quoi, ca ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    $_SESSION['username'] = $_POST['username'];
    echo $username;
    pas de session_start() non plus ?
    j'ai eliminé <?php echo htmlentities($ousername, ENT_QUOTES, 'UTF-8'); ?>
    mon code actuel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" /><br />
    pour l'index2.php, j ai remplacé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $_SESSION['username'] = $_POST['username'];
    echo $username;
     
    if(empty($_SESSION['username'])) ..
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    include('config.php');
    if(empty($_SESSION['username']))
    {?>
    ?>
    j'obtiens ce message:

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/monsite/index2.php:1) in /var/www/monsite/config.php on line 3
    Pour accéder à cette page, vous devez être connecté.

    merci

  6. #6
    Invité
    Invité(e)
    Par défaut
    dans config.php : vérifie que tu n'as aucun espace vide avant le 1er <?php

  7. #7
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 24
    Par défaut
    Citation Envoyé par lambo89 Voir le message
    Bonjour;
    je travaille sur la creation d un espace membres et du coup je me suis planté lors de l'acces au sein du site j'ai 3 fichiers php config /index(pour l identification /index2 pour le contenu reservé qui reste inaccesible au membres )
    config.php
    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
     
    <?php
    //On demarre les sessions
    session_start();
     
    /******************************************************
    ----------------Configuration Obligatoire--------------
    Veuillez modifier les variables ci-dessous pour que l'
    espace membre puisse fonctionner correctement.
    ******************************************************/
     
    //On se connecte a la base de donnee
    mysql_connect('localhost', '****', '****');
    mysql_select_db('asp-php');
     
    //Email du webmaster
    $mail_webmaster = 'blabla@hotmail.fr';
     
    //Adresse du dossier de la top site
    $url_root = 'http://monsite/';
     
    /******************************************************
    ----------------Configuration Optionelle---------------
    ******************************************************/
     
    //Nom du fichier de laccueil
    $url_home = 'index.phtml';
     
    //Nom du design
    $design = 'default';
    ?>

    mon index.phtml

    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
     
    <?php
    include('config.php');
    ?>
    <!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">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
            <title>Connection</title>
        </head>
        <body>
        	<div class="header">
            	<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
    	    </div>
    <?php
    //Si lutilisateur est connecte, on le deconecte
    if(isset($_SESSION['username']))
    {
    	//On le deconecte en supprimant simplement les sessions username et userid
    	unset($_SESSION['username'], $_SESSION['userid']);
    ?>
    <div class="message">Vous avez bien &eacute;t&eacute; d&eacute;connect&eacute;.<br />
    <a href="<?php echo $url_home; ?>">Accueil</a></div>
    <?php
    }
    else
    {
    	$ousername = '';
    	//On verifie si le formulaire a ete envoye
    	if(isset($_POST['username'], $_POST['password']))
    	{
    		//On echappe les variables pour pouvoir les mettre dans des requetes SQL
    		if(get_magic_quotes_gpc())
    		{
    			$ousername = stripslashes($_POST['username']);
    			$username = mysql_real_escape_string(stripslashes($_POST['username']));
    			$password = stripslashes($_POST['password']);
    		}
    		else
    		{
    			$username = mysql_real_escape_string($_POST['username']);
    			$password = $_POST['password'];
    		}
    		//On recupere le mot de passe de lutilisateur
    		$req = mysql_query('select password,id from users where username="'.$username.'"');
    		$dn = mysql_fetch_array($req);
    		//On le compare a celui quil a entre et on verifie si le membre existe
    		if($dn['password']==$password and mysql_num_rows($req)>0)
    		{
    			//Si le mot de passe es bon, on ne vas pas afficher le formulaire
    			$form = false;
    			//On enregistre son pseudo dans la session username et son identifiant dans la session userid
    			$_SESSION['username'] = $_POST['username'];
    			$_SESSION['userid'] = $dn['id'];
     
     
    ?>
    <div class="message">Vous avez bien &eacute;t&eacute; connect&eacute;. Vous pouvez acc&eacute;der &agrave; a votre espace de travail.<br />
    <meta http-equiv="refresh" content="5;URL=http://monsite/index2.php">
    Redirection vers monsite dans <span id="seconds">5</span>.
    <script>
          var seconds = 5;
          setInterval(
            function(){
              document.getElementById('seconds').innerHTML = --seconds;
            }, 1000
          );
        </script>
    <?php
    		}
    		else
    		{
    			//Sinon, on indique que la combinaison nest pas bonne
    			$form = true;
    			$message = 'La combinaison que vous avez entr&eacute; n\'est pas bonne.';
    		}
    	}
    	else
    	{
    		$form = true;
    	}
    	if($form)
    	{
    		//On affiche un message sil y a lieu
    	if(isset($message))
    	{
    		echo '<div class="message">'.$message.'</div>';
    	}
    	//On affiche le formulaire
    ?>
    <div class="content">
        <form action="index.phtml" method="post">
     
            <div class="center">
                <label for="username">Nom d'utilisateur:</label><input type="text" name="username" id="username" value="<?php echo htmlentities($ousername, ENT_QUOTES, 'UTF-8'); ?>" /><br />
                <label for="password">Mot de passe:</label><input type="password" name="password" id="password" /><br />
                <input type="submit" value="Connexion" />
    		</div>
        </form>
    </div>
    <?php
    	}
    }
    ?>
     
     
     
    	</body>
    </html>


    mon index2.php:
    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
     
    <?php
    $_SESSION['username'] = $_POST['username'];
    echo $username;
     
    if(empty($_SESSION['username'])) 
    {?>
    <div class="message">Pour acc&eacute;der &agrave; cette page, vous devez &ecirc;tre connect&eacute;.<br />
     
    <?php
    }else{
    ?>
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <title>monsite</title>
    <!--<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />-->
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <link href="style.css" rel="stylesheet" type="text/css" />
    <link href="layout.css" rel="stylesheet" type="text/css" />
    <script src="js/jquery.js" type="text/javascript"></script>
    <script src="js/cufon-yui.js" type="text/javascript"></script>
    <script src="js/cufon-replace.js" type="text/javascript"></script>
    <script src="js/DIN_1451_Mittelschrift_Alt_400.font.js" type="text/javascript"></script>
     
    </head>
     
    <body id="page1">
      <!-- header -->
      <div id="header">
    ...................
    </body>
    </html>
    <?php
    }
    ?>

    le login de l utilisateur est Ok, mais en voulant acceder a l'espace membres j'ai toujours
    "Pour accéder à cette page, vous devez être connecté."

    Merci pour votre aide

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

Discussions similaires

  1. variable de Session non trouvée
    Par reman dans le forum Langage
    Réponses: 6
    Dernier message: 07/01/2009, 10h25
  2. Création version client - fichiers non trouvés
    Par Pascal dans le forum WinDev
    Réponses: 7
    Dernier message: 03/12/2004, 11h34
  3. [debutant][Classpath][Linux] Classe non trouvée
    Par oghma777 dans le forum Général Java
    Réponses: 5
    Dernier message: 15/10/2004, 21h26
  4. COleDispatchDriver et Afx.h -> LPCSTR non trouvé
    Par Bayard dans le forum C++Builder
    Réponses: 2
    Dernier message: 25/09/2004, 08h42
  5. [Debutant][Install][VS]erreur sur fichier non trouvé.
    Par silvermoon dans le forum DirectX
    Réponses: 4
    Dernier message: 16/07/2004, 20h59

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