begin process at 2012 05 28 17:08:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Authentification et redirection


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Authentification et redirection

lundi 24 janvier 2011 à 17:02:58 | Authentification et redirection

ensat10

Salut tout le monde,j'ai une petit site à réaliser , mais je n'arrive pas à savoir comment faire cela:

Dans ma base de données,j'ai une table d'utilisateurs ,ces derniers font parties de plusieurs départements.

Chaque utilisateur devrait , après l'authentification être redirigé à une page selon le département dont il fait partie,et n'a pas le droit d'accéder aux autres pages concernant les autres départements.

Pourriez-vous me conseiller comment travailler cela,quoi chercher et avec quelle méthode je pourrais le faire?

et merci d'avance.
mardi 25 janvier 2011 à 01:27:01 | Re : Authentification et redirection

ensat10

Tjrs pas de réponses
jeudi 27 janvier 2011 à 10:26:03 | Re : Authentification et redirection

Lyle56

Bonjour,

Dans ton script d'authentification tu peut au choix :
--> Stocker en variable de session ou cookies le département de la personne et ensuite redirigé vers la page.
Il suffit de vérifié la variables en session ou cookies pour savoir si la personne peut ou non visualiser la page

--> Sur chaque page, vérifié en base si l'utilisateur est du département ou non.


Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.
jeudi 27 janvier 2011 à 14:49:01 | Re : Authentification et redirection

ensat10

Merci pr ta réponse:
Voilà j'ai fait ce que t'as dis:
Code PHP :
 <?php
    session_start();

    $BD_serveur     = "localhost";
    $BD_utilisateur = "root";
    $BD_motDePasse  = "";
    $BD_base        = "mabase";

    $id         = $_POST["Login"];
    $motDePasse = $_POST["Password"];

    @mysql_connect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
        or die("Impossible de se connecter au serveur de bases de données.");
    @mysql_select_db($BD_base)
        or die("Impossible de se connecter à la base de données.");
 
    $requete = "SELECT * FROM employe ".
                       " WHERE Login='$id'";
	$req = "SELECT Departement FROM employe WHERE Login='$id'";				                      
    $result = @mysql_query($requete);
	$res = @mysql_query($req);
    
    if ($enreg = @mysql_fetch_array($result)) {
	if ($res == 'Logistic') {
       
        $_SESSION["membre"] = TRUE;
        $_SESSION["membreid"] = $id;
        header("Location: stocks.php");
        die();
		    }
	elseif ($res == 'Ventes') {
		 $_SESSION["membre"] = TRUE;
        $_SESSION["membreid"] = $id;
        header("Location: ventes.php");
        die();}
	elseif ($res == 'Administration') {
		 $_SESSION["membre"] = TRUE;
        $_SESSION["membreid"] = $id;
        header("Location: EspaceAdmin.php");
        die();}	}
			
			 else {
        $_SESSION["membre"] = FALSE;
       echo "Paramètres inconnus";
    }
	
?>


Mais malheureusement ca ne marche pas,lorsque j'insère un identifient invalide ca va ce ca me retourne 'Paramètres inconnus',sinon lorsque je m'authentifie comme étant employé d'un certain département ca ne me redirige pas vers la page voulue.
Merci d'avance.
jeudi 27 janvier 2011 à 16:21:08 | Re : Authentification et redirection

TychoBrahe

Salut,

Plusieurs remarques :
- Tu ne vérifie jamais si le mot de passe est le bon, il faut absolument changer ça.
- Tu es sensible aux injections SQL, il te faut également changer ça.
- Ta variable $res est du type ressource mysql, tu ne peux pas l'utiliser directement pour comparer le résultat avec des chaînes de caractère. Comme pour ton autre requête, il te faut passer par mysql_fetch_array() ou autre fonction de ce genre.
- Tu as du code redondant qu'il est possible de déplacer afin de ne pas avoir de telles redondances.
- Ta variable $_SESSION["membre"] ne sert à rien, normalement si $_SESSION["membreid"] contient un identifiant c'est que la personne est bien un membre.
- J'espère que tu vérifie bien à chaque page que la personne y a bien accès, il ne faudrait pas que la vérification soit faite uniquement ici.
jeudi 27 janvier 2011 à 22:56:57 | Re : Authentification et redirection

ensat10

Merci pour ta réponse et excuse mon niveau c'est que je suis toute débutante mais j'essaye de m'accrocher.

J'ai essayé de rectifier mon code selon tes remarques,concernant le mot de passe,j'ai pensé bien sur à ca mais reste le problème de cryptage,dans la base de données c'est crypté,alors lorsque l'utilisateur l'insère ce n'est pas crypté,et il y a une comparaison entre les deux ,j'ai pensé à utiliser le crypt() mais bon.

Voilà mon code , bien sur ce n'est pas le parfait puisque ca ne marche toujours pas!!!


Code PHP :
<?php
    session_start();

    $BD_serveur     = "localhost";
    $BD_utilisateur = "root";
    $BD_motDePasse  = "";
    $BD_base        = "cosmecoorp";

    $id         = $_POST["Login"];
    $motDePasse = crypt($_POST["Password"]);

    @mysql_connect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
        or die("Impossible de se connecter au serveur de bases de données.");
    @mysql_select_db($BD_base)
        or die("Impossible de se connecter à la base de données.");
 
    $requete = "SELECT * FROM employe ".
                       " WHERE Login='$id' and Password='$motDePasse'";
	$req1 = "SELECT Departement FROM employe WHERE Login='$id' Password='$motDePasse' and Departement='Logistic'";	
	$req2 = "SELECT Departement FROM employe WHERE Login='$id' Password='$motDePasse' and Departement='Ventes'";	
	$req3 = "SELECT Departement FROM employe WHERE Login='$id' Password='$motDePasse' and Departement='Administration'";				                      
    $result = @mysql_query($requete);
	$res1 = @mysql_query($req1);
	$res2 = @mysql_query($req2);
	$res3 = @mysql_query($req3);
    
    if ($enreg = @mysql_fetch_array($result)) {
	if ($a = @mysql_fetch_array($res1)) {
       
        $_SESSION["membre"] = TRUE;
        $_SESSION["membreid"] = $id;
        header("Location: stocks.php");
        die();
		    }
	elseif ($b = @mysql_fetch_array($res2)) {
		 $_SESSION["membre"] = TRUE;
        $_SESSION["membreid"] = $id;
        header("Location: ventes.php");
        die();}
	elseif ($c = @mysql_fetch_array($res3)) {
		 $_SESSION["membre"] = TRUE;
        $_SESSION["membreid"] = $id;
        header("Location: EspaceAdmin.php");
        die();}	
			}
			 else {
        $_SESSION["membre"] = FALSE;
       echo "Paramètres inconnus";
    }
	
?>


Et merci encore pour votre temps et votre aide.
samedi 29 janvier 2011 à 21:59:12 | Re : Authentification et redirection

ensat10

Pourriez-vous m'aider à corriger mon code? j'ai vraiment besoin de l'aide..


Cette discussion est classée dans : redirection, authentification, départements


Répondre à ce message

Sujets en rapport avec ce message

Redirection, authentification, et POST avec header [ par olid ] Mon probleme est le suivant:Pour mes abonnés, ils ont une page perso avec des liens vers des services externes qui nécessitent une identification par Authentification sans base de donnée,redirection,aide svp [ par snakejl ] J'ai effectué des recherches et je suis tombé sur ce codehttp://www.phpcs.com/code.aspx?ID=12966J'ai étudié les codes mais attendtion je ne connais pa Redirection vers la page directement avant le login après authentification [ par nouam ] En php :J'aimerais que après authentification (login) la page soit redirigé vers la page directement avant le login .Après avoir cherché un peu partou probleme d'authentification et de redirection [ par MessengerM ] Bonjour à tous, je me remet au php apres de longues années et j'avoue etre un peu depassé lol; voici mon soucis, je veux inserer un code d'authentific authentification et utilisation de MD5 [ par rabbouba1 ] salut à tous, mon niveau en php n'est pas excellent , et j'ai un souci pour faire une authentification avec mot de passe et login. le mot de passe enr Demande une aide pour redirection controle [ par cindyo ] [^^drapeaublanc]Bonjour, je cherche une solution pour redirectioner mais visiteur sur une page si il sont pas passés par une autre : j'ai une page don authentification avec delai [ par esteller ] Bonjour à tous.s'il vous plait j'ai ecrit un code pour une authentification de 15 secondes et ca ne fonctionne pas.apres les 15 secondes s'il n'a pas Redirection php [ par youvalcsharpp ] Bonjourr, jai un input avec un bouton envoyerr j aimerai savoir comment on fait pour que lorsque par exemple dans l'input il y a marquer lol alors a Redirection non fonctionnelle [ par magaxe ] Je souhaite réalisé pour un site des blogs disponibles sur chaque page des membres ( un par utilisateur). J'ai codé la partie administration, qui per Redirection en fonction de la page demandée [ par Clems24 ] Bonjour, J'ai mis en œuvre une authentification php avec redirection. Toutefois, j'aimerais que la redirection se fasse en fonction de la page qu'a


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,059 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales