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 :

authentification d'usager


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 19
    Par défaut authentification d'usager
    Encore moi avec mes question bêtes ..

    J'ai ce code dans ma page valid.php ou je valide le code usager et le mot de passe, qui sont comparer à la BD

    voici les lignes de ma table user
    user - pw - type
    moi - 12345 - 1
    type1 - 111 - 1
    type2 - 222 - 2
    type3- 333 - 3

    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
     
    <?php	
    	session_start();
     
    	include('DB.php');	
     
    	$nUser = $_POST['nUser']; // viens du formulaire user,php
    	$nPw = $_POST['nPw'];    // viens du formulaire user,php
     
    	echo "user= " .$nUser;
    	echo "npw= " .$nPw;	
     
    	// ** user et son mot de passe //	
    	$requet = mysql_query("Select * from Fusee_User") or die('Error : '.mysql_error);
    	$row = mysql_fetch_assoc($requet);	
     
    	//** voir les infos **//
    	echo "user= " .$row['User'];
    	echo "type= " .$row['Type'];
    	echo "fk= ".$row['FK_Rest'];
     
    	if(($row['User']  == $nUser) && ($row['Pw'] == $nPw)) {						
    		$_SESSION['User'] = $nUser;
    		$_SESSION['Type'] = $row['Type'];
    		$_SESSION['fk'] = $row['FK_Rest'];		
     
    		if($row['Type'] == '1'){
    			// ** Franchiseur **
    			?>
    			<script language="JavaScript" type="text/JavaScript">								
    			window.location.replace("../admin.php");					
    			</script><?php
    		} elseif($row['Type'] == '2') {						
    			//* Franchisé **			
    			?>
    			<script language="JavaScript" type="text/JavaScript">											
    			window.location.replace("restadm.php");					
    			</script><?php
    		}												
     
    	}else{
    		//** detruit la session **//
    		$_SESSION = array();		
    		session_destroy();			
    		echo 'Access denied! <br> Pour recommencer <a href="../user.php">clicker ici</a>.';				
    	}
     
    ?>
    quand j'entre moi 12345 sa marche a merveille. J'essaie type1-111, mais la dans ma variable session j'ai encore moi-12345, il passe ds le esle mais ne detruit pas la session.

    Quand je teste un usager et mot de passe incorrecte il passe bien dans le "else", sauf qu'il ne detruit pas ma session

    Je ne vois pas ce que j'ai manquer ..

  2. #2
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    essaie ceci dans else qui detruit la session:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    unset($_SESSION['User']);
    session_unset();
    session_destroy();
    et tu dois aussi faire un test dans ta requete:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $requet = mysql_query("Select * from Fusee_User where user='$nUser' and pw='$nPw'") or die('Error : '.mysql_error);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 19
    Par défaut
    le code suivant ne change rien ... j'ai encore les meme valeur ds mes variables sessions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    //** detruit la session **//
    unset($_SESSION['User']);
    session_unset();
    $_SESSION = array();		
    session_destroy();			
    echo 'Access denied! <br> Pour recommencer <a href="../user.php">clicker ici</a>.';
    Pour la validation de mon user et pw je me sert de ce bout de code juste un peu plus bas ...
    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
     
    	// ** user et son mot de passe //	
    	$requet = mysql_query("Select * from Fusee_User ") or die('Error : '.mysql_error);
    	$row = mysql_fetch_assoc($requet);	
     
    	//** voir les infos **//
    	echo "user= ".$row['User'];
    	echo "type= ".$row['Type'];
    	echo "fk= ".$row['FK_Rest'];
     
    	if(($row['User']  == $nUser) && ($row['Pw'] == $nPw)) {	//** ici !**//		
    		if($row['Type'] == '1'){
    			// ** Franchiseur **
    			?>
    			<script language="JavaScript" type="text/JavaScript">								
    			window.location.replace("../admin.php");					
    			</script><?php
    		} elseif($row['Type'] == '2') {						
    			//* Franchisé **			
    			?>
    			<script language="JavaScript" type="text/JavaScript">											
    			window.location.replace("restadm.php");					
    			</script><?php
    		}												
     
    	}else{
    		//** detruit la session **//
    		unset($_SESSION['User']);
    		session_unset();
    		$_SESSION = array();		
    		session_destroy();			
    		echo 'Access denied! <br> Pour recommencer <a href="../user.php">clicker ici</a>.';				
    	}

  4. #4
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    tu dois aussi changer la requete:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $requet = mysql_query("Select * from Fusee_User where user='$nUser' and pw='$nPw'") or die('Error : '.mysql_error);

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 19
    Par défaut
    En effet, vous aviez raison. Tout focntionne a merveille

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

Discussions similaires

  1. [TIdSMTP] Envoi d'un mail avec authentification ?
    Par BACUS dans le forum C++Builder
    Réponses: 4
    Dernier message: 16/06/2004, 16h18
  2. Authentification Sécurisée
    Par HPJ dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 23/06/2003, 10h45
  3. [POSTGRES] pb configuration authentification
    Par Fyna dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 19/06/2003, 19h16

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