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 :

Condition pour compte utilisateur [MySQL]


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
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Janvier 2015
    Messages : 24
    Par défaut Condition pour compte utilisateur
    bonjour, j'ai un petit soucis si quelqu'un veut bien m'éclairer.

    J'ai mis une condition pour que l'autre l'utilisateur ou l'admin se connecte ça l'envoie sur une page et si c'est un client ça l'envoie sur une autre page.

    La page du client marche
    La page pour l'admin et l'utilisateur ne marche pas. Ca renvoie sur la page veto/index.php (qui est la page de connexion) alors que je pointe pourtant sur veto/gestion/index.php Quelqu'un peut il m'éclairer ?....

    Voici le code :

    Verif.php (la où y'a la condition)
    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
    session_start();
    require_once 'utilities/connect_db.php';
    $valider = $_POST['Valider'];
    if($valider == 'Valider'){
    	$login = $_POST['login'];
    	$mdp = $_POST['mdp'];
    	$mdp_crypt = md5($mdp);
    	if($login == "" || $mdp == ""){
    		header ('Location: /veto/index.php?erreur=incomplet');
    	}
    	else{
    		$q = 'SELECT * FROM t_user WHERE login=:login AND mdp=:mdp';
    		$query = $db->prepare($q);
    		$query->execute(array(':login' => $login, ':mdp' => $mdp));
    		if($query->rowCount() == 0){
    			header ('Location: /veto/index.php?erreur=invalide');
    		}else{
    			$row = $query->fetch(PDO::FETCH_ASSOC);
    			session_regenerate_id();
    			$_SESSION['sess_id_user'] = $row['id_user'];
    			$_SESSION['sess_login'] = $row['login'];
    			$_SESSION['sess_usertype'] = $row['type'];
    			echo $_SESSION['sess_usertype'];
    			if( $_SESSION['sess_usertype'] == "admin"){
    				header ('Location: /veto/gestion/index.php/');
    			}else if( $_SESSION['sess_usertype'] == "user"){
    				header ('Location: /veto/gestion/index.php/');
    			}
    			else{
    				header ('Location: ../happypetclinic/');
    			}
    		}
    	}
    }
    ?>
    veto/index.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
    <?php
    require_once 'utilities/top_home.php';
    echo '<div id="connexion">';
    echo '<p>Veuillez vous connecter :</p>';
    if(isset($_GET['erreur'])){
    	if($_GET['erreur'] == 'incomplet'){
    		echo '<p style="color:red;">Tous les champs sont obligatoires !</p>';
    	}
    	if($_GET['erreur'] == 'invalide'){
    		echo '<p style="color:red;">Veuillez taper un login et un mot de passe valide !</p>';
    	}
    }
    echo '<form id="connexion" name="connexion" action="verif.php" method="POST">';
    echo '<label for="login">Login : </label>';
    echo '<input type="text" name="login" id="login"/>';
    echo '<br />';
    echo '<label for="mdp">Mot de passe : </label>';
    echo '<input type="password" name="mdp" id="mdp"/>';
    echo '<br />';
    echo '<input type="submit" name="Valider" value="Valider"/>';
    echo '</form>';
    echo '</div>';
    require_once 'utilities/footer_home.php';
    ?>

    veto/gestion/index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    require_once '../utilities/secure.php';
    require_once '../utilities/top.php';
    echo '<p style="color:red;">Connexion réussie</p>';
    echo '<p style="color:black;"> <center> Vous avez désormais accès à l\' ensemble des données clients 
    	<p>Actualité
    	Notes importantes pour les salaries </p></center>
    	</p>';
    require_once '../utilities/footer.php';
    ?>
    top.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
    <?php
    require_once 'header.php';
    require_once 'connect_db.php';
    ?>
    <body>
    	<div id="general">
    		<div id="top">
    			<ul id="menu-top">
    				<li><a href="/veto/gestion/index.php">Accueil</a></li>
    				<li><a href="/veto/gestion/consultation/index.php">Consultation</a></li>
    				<li><a href="/veto/gestion/proprietaire/index.php">Propriétaire</a></li>
    				<li><a href="/veto/gestion/race/index.php">Race</a></li>
    				<li><a href="/veto/gestion/medicament/index.php">Médicament</a></li>
    				<li><a href="/veto/gestion/veterinaire/index.php">Veterinaires</a></li>
    <?php
    if (isset ($_SESSION['sess_login']) && strtolower ($_SESSION['sess_usertype'])=='admin'){
    	echo '<li><a href="/veto/gestion/employes/index.php">Coordonnees du Personnel</a></li>';
    	echo '<li><a href="/veto/gestion/user/index.php">Creation</a></li>';
    }
    ?>
    			</ul>
    			<p id="disconnect"><a href="/veto/utilities/disconnect.php">Déconnecter ?</a></p>
    		</div>

    merci beaucoup !

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Remplace
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    			if( $_SESSION['sess_usertype'] == "admin"){ // à quoi sert le dernier / ???
    				header ('Location: /veto/gestion/index.php/');
    			}else if( $_SESSION['sess_usertype'] == "user"){
    				header ('Location: /veto/gestion/index.php/'); // à quoi sert le dernier / ???
    			}
    			else{
    				header ('Location: ../happypetclinic/');
    			}
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    			switch( $_SESSION['sess_usertype'] )
    			{
    				case "admin":
    				case "user":
    					header ('Location: ./veto/gestion/index.php');
    					break;
    				default:
    					header ('Location: ../happypetclinic/');
    			}
    Dernière modification par Invité ; 29/05/2015 à 16h11.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Janvier 2015
    Messages : 24
    Par défaut
    j'essaie tout de suite merci beaucoup !

  4. #4
    Invité
    Invité(e)
    Par défaut
    As-tu vérifié que $_SESSION['sess_usertype'] renvoie la bonne valeur ?
    Si OK, la redirection doit se faire.

    Quel est le code de utilities/secure.php ?
    N'y aurait-il pas une autre redirection dedans ?

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Janvier 2015
    Messages : 24
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    	session_start();
    	if($_SESSION['login'] == '')
    	{
    		header('Location: /veto/index.php');
    	}
     
    ?>
    Le code utilities/secure.php

    Je viens de vérifier tout maintenant ça marche.
    C'est très bizarre car ça a toujours marché, ça s'est mis à ne plus marcher d'un coup. Et ça remarche ! c'était du à un problème de nom dans la table t_user. C'est bizarre car avant ça marchait !


    Merci beaucoup pour ton aide !

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

Discussions similaires

  1. [AC-2007] MsgBox avec champ de saisie pour compte utilisateurs
    Par theuma dans le forum Access
    Réponses: 7
    Dernier message: 26/04/2011, 12h59
  2. Réponses: 2
    Dernier message: 24/09/2007, 17h18
  3. Réponses: 12
    Dernier message: 25/08/2006, 13h44
  4. Droits limités pour un compte utilisateur
    Par gothikth dans le forum Windows XP
    Réponses: 3
    Dernier message: 13/07/2006, 10h21
  5. Commande pour accéder au menu de gestion compte utilisateur?
    Par Virgile59 dans le forum Autres Logiciels
    Réponses: 6
    Dernier message: 17/10/2005, 12h00

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