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 :

Page d'accueil différente pour membre


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut Page d'accueil différente pour membre
    Bonjour à tous

    De retour, plus d'un an d'absence de ce forum (Votre dernière visite : 27/02/2007 à 05h41) comme quoi !

    Bon j'explique mon problème j'essaye de mettre en place un système de login, qui jusqu'à présent marche mais pas trop comme je veux.

    Mon code authentifie le user tout va bien, mais ce que je voudrais c'est que cet utilisateur une fois authentifié ait accès au même index qu'un visiteur mais à la place des champs User/ Password, on retrouve son pseudo, à peu près la la même chose que quand on s'authentifie sur ce forum

    Bienvenue, MMO95.
    Votre dernière visite : 27/02/2007 à 05h41
    Messages privés : 0 non lu(s), 2 au total.


    Il ya un poste similaire d'un "forumiste" >ici< mais je n'arrive pas à adapter son code au mien...

    Pourriez vous m'aider please ?

    Merci d'avance

    Voici mon code :
    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
    <?php
    	//Start session
    	session_start();
     
    	//Connect to mysql server
    	$link=mysql_connect("localhost","root","");
    	if(!$link) {
    		die('Failed to connect to server: ' . mysql_error());
    	}
    	//Select database
    	$db=mysql_select_db("login");
    	if(!$db) {
    		die("Unable to select database");
    	}
     
    	//Sanitize the value received from login field
    	//to prevent SQL Injection
    	if(!get_magic_quotes_gpc()) {
    		$login=mysql_real_escape_string($_POST['login']);
    	}else {
    		$login=$_POST['login'];
    	}
     
    	//Create query
    	$qry="SELECT member_id FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
    	$result=mysql_query($qry);
    	//Check whether the query was successful or not
    	if($result) {
    		if(mysql_num_rows($result)>0) {
    			//Login Successful
    			session_regenerate_id();
    			$member=mysql_fetch_assoc($result);
    			$_SESSION['SESS_MEMBER_ID']=$member['member_id'];
    			session_write_close();
    			header("location: ../index2.php");break;
    			exit();
    		}else {
    			//Login failed
    			header("location: login-failed.php");break;
    			exit();
    		}
    	}else {
    		die("Query failed");
    	}
    ?>
    PS : J'ai essayé avec index2.php mais quand je reviens en arrière je ne suis plus authentifié sur index.php on peut le dire, c'est du pure bricolage qui ne marche pas !!

  2. #2
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Salut,
    en plus de l'id tu peux stocker le login du user en session, ensuite tu testes si $_SESSION['login'] existe et tu l'affiches.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par Djakisback Voir le message
    Salut,
    en plus de l'id tu peux stocker le login du user en session, ensuite tu testes si $_SESSION['login'] existe et tu l'affiches.
    Re

    Comment dois-je faire pour que justement l'affichage se réalise sur la même page index.php ? j'ai remis tout le code précédant + les "echo" à afficher de la session mais j'ai toujours des erreurs et l'affichage se fait sur une autre page notamment ==> <form id="loginForm" name="loginForm" method="post" action="login/login-exec.php">

    Pour rappel, moi je voudrais que l'utilisateur ait la même page d'accueil que les autres mais une fois authentifié, il n'aura plus les champs User et Password... à la place je réafficherai son pseuso ect..

    Thanks !

  4. #4
    Expert éminent
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Points : 9 031
    Points
    9 031
    Par défaut
    Citation Envoyé par MMO95 Voir le message
    Comment dois-je faire pour que justement l'affichage se réalise sur la même page index.php ? j'ai remis tout le code précédant + les "echo" à afficher de la session mais j'ai toujours des erreurs et l'affichage se fait sur une autre page notamment ==> <form id="loginForm" name="loginForm" method="post" action="login/login-exec.php">
    Sur cette première partie je dois avouer que je ne comprends pas trop où est le problème !


    Citation Envoyé par MMO95 Voir le message
    Pour rappel, moi je voudrais que l'utilisateur ait la même page d'accueil que les autres mais une fois authentifié, il n'aura plus les champs User et Password... à la place je réafficherai son pseuso ect..
    Comment fais tu pour afficher ton formulaire ?

    Perso j'affiche mon formulaire en include ainsi :

    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
    	<form method="post" action="<?php __FILE__ ?>">
    	  <fieldset id="zone_identifi">
    <?php
    if ($_SESSION['est_identif'] == 'non') {
    ?>
    	    <legend>Identifiez vous&nbsp;</legend>
    Pseudo :<br>
    	    <input name="pseudo_connex" type="text" size="20" maxlength="40" value="">
    	    <br>
    Mot de passe :<br>
    	    <input name="mdp_connex" type="password" size="20" maxlength="40" value="">
    	    <input name="souvenir_connex" type="checkbox" value="1" checked>Se souvenir de moi.
     
    	    <input id="input_connex_zone_identif" type="submit" value="Connexion" name="connexion_mbres">
    <?php
    } elseif ($_SESSION['est_identif'] == 'oui') {
    ?>
    	    <input id="input_deconnex_zone_identif" type="submit" value="Déconnexion" name="deconnexion_mbres" onclick="return confirm('ATTENTION\nVoulez vous vraiment vous déconnecter du site ?\n...');">
    <?php
    }
    ?>
    	  </fieldset>
    	</form>
    Lors de l'identification je crée une entrée dans la session qui est $_SESSION['est_identif'] valant oui ou non qui va déterminer si le formulaire d'identification est affiché ou non...

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Pourrais-tu m'expliquer comment et surtout quel fichier devrais-je mettre en include, car là je perds un peu les pédales et je suis que débutant en prog PHP ..

    En plus claire, voici ce que cela donne avec mon code : test

    User : test1
    Pwd : aaa

    Ma page TEMP_TEST.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
    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
    <form id="loginForm" name="loginForm" method="post" action="login-exec.php">
    <table cellspacing="0" cellpadding="1" border="0">
    <tr>
     
    <th><font style="font-family:arial; font-size:11; color: #000000;">User :</font></th>
    <td>
    <input name="login" type="text" id="login" value="" size="15" style="font-family:arial; font-size:11px; background: white url(user.gif) no-repeat; padding-left: 24px;">
    </input>
    </td>
    </tr>
     
    <tr>
    <th><font style="font-family:arial; font-size:11; color: #000000;">Password : </font></th>
    <td>
    <input name="password" type="password" id="password" size="15" style="font-family:arial; font-size:11px; background: white url(key.gif) no-repeat; padding-left: 24px; "></input>
     
    </td>
    </tr>
     
    <tr>
    <th>
    </th>
    <td>
     
    <input type="submit" name="Submit" value="Login" size="15" style="font-family:arial; font-size:11px; background: white url(login.gif) no-repeat; padding-left: 24px; "></input><br>
    </form>
     
    <font style="font-style:italic; font-family:arial; font-size:11; color: #000000;"><a href="passoublie.php">Mot de passe oublié ?</a></font>
    </td>
    </tr>
    </table>
     
     
    <font color="red">
     
    <?php
    	//Start session
    	session_start();
     
    	//Connect to mysql server
    	$link=mysql_connect("localhost","root","");
    	if(!$link) {
    		die('Failed to connect to server: ' . mysql_error());
    	}
    	//Select database
    	$db=mysql_select_db("login");
    	if(!$db) {
    		die("Unable to select database");
    	}
     
    	//Sanitize the value received from login field
    	//to prevent SQL Injection
    	if(!get_magic_quotes_gpc()) {
    		$login=mysql_real_escape_string($_POST['login']);
    	}else {
    		$login=$_POST['login'];
    	}
     
    	//Create query
    	$qry="SELECT member_id FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
    	$result=mysql_query($qry);
    	//Check whether the query was successful or not
     
     
     
     
     
     
     
     
    	if($result) {
    		if(mysql_num_rows($result)>0) {
    			//Login Successful
    			session_regenerate_id();
    			$member=mysql_fetch_assoc($result);
    			$_SESSION['SESS_MEMBER_ID']=$member['member_id'];
    			session_write_close();
     
    			{
     
      echo("<pre>") ;
      echo($_SESSION) ;
      echo("</pre>") ;
      echo("Votre identifiant de session est ".session_id()."<br/>") ;
      echo("Bonjour ".$_SESSION["login"]." vous êtes maintenant sur la page 1<br/>") ; 
      echo("Pour allez à la page 2, cliquez <a href=\"page2.php\">ici</a><br/>") ;
      echo("Pour vous déconnecter, cliquez <a href=\"logout.php\">ici</a><br/>") ;
    }//fin else
    			exit();
    		}else {
    			//Login failed
    			header("location: login-failed.php");
    			exit();
    		}
    	}else {
    		die("Query failed");
    	}
    ?>
     
     
     
    </font>
    Ma page login-exec.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
    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
     
    <?php
    	//Start session
    	session_start();
     
    	//Connect to mysql server
    	$link=mysql_connect("localhost","root","");
    	if(!$link) {
    		die('Failed to connect to server: ' . mysql_error());
    	}
    	//Select database
    	$db=mysql_select_db("login");
    	if(!$db) {
    		die("Unable to select database");
    	}
     
    	//Sanitize the value received from login field
    	//to prevent SQL Injection
    	if(!get_magic_quotes_gpc()) {
    		$login=mysql_real_escape_string($_POST['login']);
    	}else {
    		$login=$_POST['login'];
    	}
     
    	//Create query
    	$qry="SELECT member_id FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
    	$result=mysql_query($qry);
    	//Check whether the query was successful or not
     
     
     
     
     
     
     
     
    	if($result) {
    		if(mysql_num_rows($result)>0) {
    			//Login Successful
    			session_regenerate_id();
    			$member=mysql_fetch_assoc($result);
    			$_SESSION['SESS_MEMBER_ID']=$member['member_id'];
    			session_write_close();
     
    			{
     
      echo("<pre>") ;
      echo($_SESSION) ;
      echo("</pre>") ;
      echo("Votre identifiant de session est ".session_id()."<br/>") ;
      echo("Bonjour ".$_SESSION["login"]." vous êtes maintenant sur la page 1<br/>") ; 
     
    }//fin else
    			exit();
    		}else {
    			//Login failed
    			header("location: login/login-failed.php");
    			exit();
    		}
    	}else {
    		die("Query failed");
    	}
    ?>
    Moi je voudrais que tout cela se réalise sur une seule page, de plus quand l'utilisateur navigue sur les autres pages ou recharge (F5) la page ne voit pas les champs user et password mais plutôt son pseudo ect...

    J'espère avoir bien expliquer....

  6. #6
    Expert éminent
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Points : 9 031
    Points
    9 031
    Par défaut
    Citation Envoyé par MMO95 Voir le message
    Moi je voudrais que tout cela se réalise sur une seule page
    Alors inspires toi de mon exemple dans lequel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" action="<?php __FILE__ ?>">
    signifie que le form renverra sur la même page. Tu utilises le code d'identification que tu as fait et tu le places dans un fichier php, pour inclure ce fichier tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    include 'ton/chemin/nom_fichier.inc.php';
    sur chaque page sur laquelle se trouve le formulaire. Places ce code dans un if pour vérifier que le formulaire est envoyé :

    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
    if (isset($_POST['Submit'])) {
    	//Connect to mysql server
    	$link=mysql_connect("localhost","root","");
    	if(!$link) {
    		die('Failed to connect to server: ' . mysql_error());
    	}
    	//Select database
    	$db=mysql_select_db("login");
    	if(!$db) {
    		die("Unable to select database");
    	}
     
    	//Sanitize the value received from login field
    	//to prevent SQL Injection
    	if(!get_magic_quotes_gpc()) {
    		$login=mysql_real_escape_string($_POST['login']);
    	}else {
    		$login=$_POST['login'];
    	}
     
    	//Create query
    	$qry="SELECT member_id FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
    	$result=mysql_query($qry);
    	//Check whether the query was successful or not
     
    	if($result) {
    		if(mysql_num_rows($result)>0) {
    			//Login Successful
    			session_regenerate_id();
    			$member=mysql_fetch_assoc($result);
    			$_SESSION['SESS_MEMBER_ID']=$member['member_id'];
                                           $_SESSION['est_identifie'] = 'oui';// la personne est correctement identifiée
    			session_write_close();
     
    			{
     
    }//fin else
     
    }
    Tu rajoutes ensuite une valeur dans la session genre $_SESSION['est_identifie'] que tu mets par exemple à oui (voir exemple) puis pour afficher le formulaire ou pas tu vérifie cette valeur.

    Pour que ça fonctionne il faut que tu places un session_start() sur chaque page où tu utilises les sessions avant tout sortie de code vers le navigateur.

    Bon voilà je pense que c'est une bonne base de travail...

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Ree je n'avais pas réussi hier !

    Là je viens de tout reprendre et grace à tes explications j'ai réussi ! pour te dire je ne savais meme pas que pour inclure un fichier on devait le renommé en inc.php ...

    Bon j'y suis presque mais c'est pas encore ca car mes variables $_POST ne sont plus reconnues deplus pour que tout cela marche sur une seule page j'ai du enlevé ca de mon code sur login-exec.inc.php qui se trouvait tout à la fin de la page (voir poste #5) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    //Login failed
    			header("location: login/login-failed.php");
    			exit();
    Ca servait surement à envoyer la page d'erreur en cas d'echec de login
    En le laissant j'obtiens cette erreur qui vient remplacé les champs user/password

    Warning: Cannot modify header information - headers already sent by (output started at f:\programmes\eeasy_php\www\login\login-exec.inc.php:19) in f:\programmes\eeasy_php\www\login\login-exec.inc.php on line 50

    En l'enlevant mes champs reviennent.

    Voici mon nouveau login-exec.inc.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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    <?php
    	//Start session
    	session_start();
     
    	//Connect to mysql server
    	$link=mysql_connect("localhost","root","");
    	if(!$link) {
    		die('Failed to connect to server: ' . mysql_error());
    	}
    	//Select database
    	$db=mysql_select_db("login");
    	if(!$db) {
    		die("Unable to select database");
    	}
     
    	//Sanitize the value received from login field
    	//to prevent SQL Injection
    	if(!get_magic_quotes_gpc()) {
    		$login=mysql_real_escape_string($_POST['login']);
    	}else {
    		$login=$_POST['login'];
    	}
     
    	//Create query
    	$qry="SELECT member_id FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
    	$result=mysql_query($qry);
    	//Check whether the query was successful or not
     
     
    	if($result) {
    		if(mysql_num_rows($result)>0) {
    			//Login Successful
    			session_regenerate_id();
    			$member=mysql_fetch_assoc($result);
    			$_SESSION['SESS_MEMBER_ID']=$member['member_id'];
    			session_write_close();
     
    			{
     
      echo("<pre>") ;
      echo($_SESSION) ;
      echo("</pre>") ;
      echo("Votre identifiant de session est ".session_id()."<br/>") ;
      echo("Bonjour ".$_SESSION["login"]." vous êtes maintenant sur la page 1<br/>") ; 
     
    }//fin else
    			exit();
    		}else {
     
    		}
    	}else {
    		die("Query failed");
    	}
    ?>
    Et ici mon nouveau TEMP_TEST.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
    36
    <?php include 'login-exec.inc.php'?>
     
     
    <html>
    <form id="loginForm" name="loginForm" method="post" action="<?php __FILE__ ?>">
    <table cellspacing="0" cellpadding="1" border="0">
    <tr>
     
    <th><font style="font-family:arial; font-size:11; color: #000000;">User :</font></th>
    <td>
    <input name="login" type="text" id="login" value="" size="15" style="font-family:arial; font-size:11px; background: white url(user.gif) no-repeat; padding-left: 24px;">
    </input>
    </td>
    </tr>
     
    <tr>
    <th><font style="font-family:arial; font-size:11; color: #000000;">Password : </font></th>
    <td>
    <input name="password" type="password" id="password" size="15" style="font-family:arial; font-size:11px; background: white url(key.gif) no-repeat; padding-left: 24px; "></input>
     
    </td>
    </tr>
     
    <tr>
    <th>
    </th>
    <td>
     
    <input type="submit" name="Submit" value="Login" size="15" style="font-family:arial; font-size:11px; background: white url(login.gif) no-repeat; padding-left: 24px; "></input><br>
    </form>
     
    <font style="font-style:italic; font-family:arial; font-size:11; color: #000000;"><a href="passoublie.php">Mot de passe oublié ?</a></font>
    </td>
    </tr>
    </table>
    </html>
    Pour le If à placer dans la page, j'y suis encore, quand je le mets sur TEMP_TEST.php par exemple ça me balance une autre erreur.. donc où est ce je dois le placer exactement please ?

    Lien pour tester

    Test

  8. #8
    Expert éminent
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Points : 9 031
    Points
    9 031
    Par défaut
    Bon j'essaye de prendre dans l'ordre :

    Pour l'include il ne doit pas forcément s'appeler inc.php c'est une bonne pratique pour savoir que c'est un include (le inc.) par contre le fichier doit avoir l'extension .php

    Le header('location: ...') te tenvoi vers une autre page, le header (comme le session_start ou setcookie) doivent être au début de ton code, en tout cas avant toute sortie texte vers le navigateur (vois dans la faq pour l'explication plus détaillée du message d'erreur...)

    Pour le reste j'ai un peu corrigé toin code, tu trouvera les explications en commantaire dans le code

    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
    <?php include 'login-exec.inc.php'?>
     
     
    <html>
     
    <?php
    if ($_SESSION['est_identif'] == 'non') {
    // la personne n'est pas identifiée, on affiche le formulaire
    ?>
     
    <form id="loginForm" name="loginForm" method="post" action="<?php __FILE__ ?>">
    <table cellspacing="0" cellpadding="1" border="0">
    <tr>
     
    <th><font style="font-family:arial; font-size:11; color: #000000;">User :</font></th>
    <td>
    <input name="login" type="text" id="login" value="" size="15" style="font-family:arial; font-size:11px; background: white url(user.gif) no-repeat; padding-left: 24px;">
    </input>
    </td>
    </tr>
     
    <tr>
    <th><font style="font-family:arial; font-size:11; color: #000000;">Password : </font></th>
    <td>
    <input name="password" type="password" id="password" size="15" style="font-family:arial; font-size:11px; background: white url(key.gif) no-repeat; padding-left: 24px; "></input>
     
    </td>
    </tr>
     
    <tr>
    <th>
    </th>
    <td>
     
    <input type="submit" name="Submit" value="Login" size="15" style="font-family:arial; font-size:11px; background: white url(login.gif) no-repeat; padding-left: 24px; "></input><br>
    </form>
     
    <font style="font-style:italic; font-family:arial; font-size:11; color: #000000;"><a href="passoublie.php">Mot de passe oublié ?</a></font>
    </td>
    </tr>
    </table>
    <?php
    } elseif ($_SESSION['est_identif'] == 'oui') {
    // la personne est identifiée, on affiche ses infos
     
     
      echo("<pre>") ;
      echo($_SESSION) ;
      echo("</pre>") ;
      echo("Votre identifiant de session est ".session_id()."<br/>") ;
      echo("Bonjour ".$_SESSION["login"]." vous êtes maintenant sur la page 1<br/>") ; 
     
     
    }
    ?>
     
    </html>
    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
    <?php
    	//Start session
    	session_start();
     
    if (empty($_SESSION['est_identifie'])) {
        $_SESSION['est_identifie'] = 'non';// par défaut la personne n'est pas identifiée
    }
     
     
        if (isset($_POST['Submit'])) {// Pourquoi cete ligne : quand on affiche la page pour la première fois le formulaire n'est pas envoyé, ce qui eplique le message d'erreur car php ne connais pas l'index login (nom de l'input dans le formulaire) idem pour password
    	//Connect to mysql server
    	$link=mysql_connect("localhost","root","");
    	if(!$link) {
    		die('Failed to connect to server: ' . mysql_error());
    	}
    	//Select database
    	$db=mysql_select_db("login");
    	if(!$db) {
    		die("Unable to select database");
    	}
     
    	//Sanitize the value received from login field
    	//to prevent SQL Injection
    	if(!get_magic_quotes_gpc()) {
    		$login=mysql_real_escape_string($_POST['login']);
    		$mdp=mysql_real_escape_string($_POST['password']);
    	}else {
    		$login=$_POST['login'];
    		$mdp=$_POST['password'];
    	}
     
     
    	//Create query
    	$qry="SELECT member_id FROM members WHERE login='$login' AND passwd='".md5($mdp)."'";
    	$result=mysql_query($qry);
    	//Check whether the query was successful or not
     
     
    	if($result) {
    		if(mysql_num_rows($result)>0) {
    			//Login Successful
    			session_regenerate_id();
    			$member=mysql_fetch_assoc($result);
    			$_SESSION['SESS_MEMBER_ID']=$member['member_id'];
    			$_SESSION['est_identifie'] = 'oui';
    			session_write_close();
     
    			//{ a enlever je ne vois pas à quoi ça sert
     
     
    		}//fin else
    // a enlever je ne vois pas à quoi ça sert -->			exit();
    	}
     
        }// fin du if verifiant que le formulaire est envoyé
    ?>

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Merciiiiiiiiiiiiiii !! ca marche

    Tu avais just oublié de mettre est_identifie au lieu de est_identif mais là tout fonctionne comme je veux ! je vais voir comment on kill les cookies pour me déloguer

    Merci encore une fois je laisse ouvert le topic je pense que je vais en avoir des question encore si je m'en sort pas avec google !

    slt

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 17/11/2010, 16h11
  2. [eZ Publish 4.3] Une page d'accueil différente selon l'utilisateur
    Par sboyer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 27/09/2010, 10h01
  3. position idéale pour placer un menu dans une page d'accueil
    Par Smix007 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 01/02/2007, 12h14
  4. Existe t'il un lien RSS pour les news de la page d'accueil ?
    Par elitost dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 4
    Dernier message: 22/02/2006, 13h58
  5. Bonjour petit débutan a besoin d'aide pour page d'accueil
    Par Gray Man dans le forum Balisage (X)HTML et validation W3C
    Réponses: 13
    Dernier message: 09/12/2005, 17h33

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