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 :

Mise à jour d'informations personnelles [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut Mise à jour d'informations personnelles
    Bonjour,

    je m'excuse par avance si ce topic n'est pas au bon endroit car j'ai du mal à définir ma recherche.

    Je veux coder une page de mise à jour d'informations personnelles càd :

    Ancien password : (comment faire la correspondance entre le mdp que l'utilisateur tape et celui qui est stocké en base ?)
    Nouveau password :
    Confirmer le nouveau password :

    @mail : (pré-remplie si il y a une @mail dans la base de données)

    Voila un peu ce que je voudrais faire. Je ne vous demande pas un programme tout fait, juste quelques pistes qui pourraient m'aider à partir.

    Cdlt

  2. #2
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Comment faire pour récupérer le login de l'utilisateur qui est connecté sur l'application afin de pouvoir le réutiliser dans des requêtes SQL ?

  3. #3
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 096
    Points : 4 437
    Points
    4 437
    Par défaut

    Normalement on enregistre l'id de l'utilisateur dans la session au moment du login
    $moi= ( !== ) ? : ;

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    Ancien password : (comment faire la correspondance entre le mdp que l'utilisateur tape et celui qui est stocké en base ?)
    Indice: Comme il est interdit de faire transiter des passwords non cryptés, tu dois comparer si le cryptage de l'ancien password renseigné par l'utilisateur est bien le même que le mot de passe en base de données(déjà crypté).

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Du coup si j'ai bien compris pour recuperer le login de l'utilisateur connecté, il suffit d'exploiter la variable $_SESSION['login'] que l'on a au préalable dans un autre formulaire affecté à $_POST['login']

    Elle est globale de base ou il faut la déclarer dans un fichier qu'il faudra inclure de le fichier actuel ?

    Indice: Comme il est interdit de faire transiter des passwords non cryptés, tu dois comparer si le cryptage de l'ancien password renseigné par l'utilisateur est bien le même que le mot de passe en base de données(déjà crypté).
    Hmm ok, du coup il suffit de requeter la base, de recupérer le mot de passe crypté et de le comparer au mot de passe (que l'on a au préalable crypté) rentré par l'utilisateur.

    Merci !

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    En session le minima c'est l'id utilisateur, mais si tu affiches des choses genre "loggé en tant que Goto Tog" tu vas pas faire un requête en base de données pour chaque page affiché.Pour éviter les requêtes intempestives tu peux stocker son nom/prenom en plus par exemple.

    Donc non rien a voir avec le login, une fois connecté, si login/password est bon, tu met l'id (contenu dans la base de données, donc rien a voir avec POST) de cet utilisateur en session

  7. #7
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Pour le moment j'ai attaqué quelque chose comme ça :
    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
     
    <?php
    if (isset($_POST['apass'], $_POST['npass'], $_POST['cnpass'], $_POST['email'], $_POST['enregistrer']))
    {
    	$pass_user = $bdd->query('SELECT password FROM config_users WHERE login ="' . $_SESSION['login'] .'" ') or $echec = 0; 	//die(print_r($bdd->errorInfo()));
    	$donnees_active = $pass_user->fetch();
     
    	if ($donnees_active['password'] == MD5($_POST['apass']))
    	{
    		if ($_POST['npass'] == $_POST['cnpass'])
    		{
    			$np = MD5($_POST['npass']);
    			$insert_pass = $bdd->prepare('INSERT INTO config_users (password, email) VALUES (:password, :email)');
    			$insert_pass->execute(array(':password'=>$np, ':email'=>$_POST['email']));
    		}
    	}
    	else
    	{
    		$erreur .='Le mot de passe actuel ne correspond pas avec celui en base !'; 	 
    	}
    }?>
    Par contre j'ai pas eus encore le temps de tester. C'est juste histoire de voir si je suis pas carrément à côté de la plaque.

  8. #8
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    C'est bien ca globalement.

  9. #9
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Niquel merci beaucoup ! Je vais le finir au plus vite, je le teste et je reviens vers vous si j'ai des soucis !

    [EDIT] Je voudrais savoir comment faire pour pré-remplir une zone de texte. Je m'explique. Si l'utilisateur possède déjà une adresse mail dans la base de données, j'aimerai quelle soit affichée dans la zone de texte Adresse mail.

    En gros qu'il n'ait pas à la remplir [/EDIT]

  10. #10
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    C'est super simple, tu vas te trouver con .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" value ="<?php echo $ma_value ?>" />

  11. #11
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Dis comme ça c'est vrai que c'est relativement... con xD

    Du coup :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $pass_user = $bdd->query('SELECT password FROM config_users WHERE login ="' . $_SESSION['login'] .'" ') or $echec = 1; 	//die(print_r($bdd->errorInfo()));
    	$donnees_active = $pass_user->fetch();?>
     
    <input id="mail" type="mail" name="email" value ="<?php echo  $mail['email'] ?>" required>
    Sauf qu'il faut que je mette ça dans un if

  12. #12
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    Faire un if et verifier une valeur c'est facile, cherche un peu pour celle la, je te cracherai pas le code

  13. #13
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Ca doit ressembler à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input id="mail" type="mail" name="email" value ="<?php if ($empty != 1) { echo  $mail['email'] } ?>" required>
    En tout cas merci pour ton aide

  14. #14
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 096
    Points : 4 437
    Points
    4 437
    Par défaut
    Citation Envoyé par ciols Voir le message
    Sauf qu'il faut que je mette ça dans un if
    ? pourquoi faire ton if exactement ?

    parce que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if $donnees_active['email']<>'' echo $donnees_active['email'] else echo ''
    c'est pas vraiment utile
    $moi= ( !== ) ? : ;

  15. #15
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Je pensais plutôt à ça :
    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
     
    <?php
    $mail_user = $bdd->query('SELECT email FROM config_users WHERE login ="' . $_SESSION['login'] .'" ') or $empty = 1;
    $mail = $mail_user->fetch();
     
    if (isset($_POST['apass'], $_POST['npass'], $_POST['cnpass'], $_POST['email'], $_POST['enregistrer'])) 
    {
    	$pass_user = $bdd->query('SELECT password FROM config_users WHERE login ="' . $_SESSION['login'] .'" ') or $echec = 1; 	//die(print_r($bdd->errorInfo()));
    	$donnees_active = $pass_user->fetch();
     
    	if ($empty == 1 && empty($_POST['apass']))		//  Pas d'@ en base  +  non chgt de mot de passe
    	{
    		$insert_mail = $bdd->prepare('INSERT INTO config_users (email) VALUES (:email)');
    		$insert_mail->execute(array(':email'=>$_POST['email']));
    	}
    	else if ($empty == 1 && !empty($_POST['apass'])) 	// Pas d'@ en base  +  chgt de mot de passe
    	{
    		if ($donnees_active['password'] == MD5($_POST['apass']))  // Si l'ancien password correspond a celui stocké en base
    		{
    			if ($_POST['npass'] == $_POST['cnpass'])   // Si les deux nouveaux pass correspondent
    			{
    				$np = MD5($_POST['npass']);
    				$insert_both = $bdd->prepare('INSERT INTO config_users (password, email) VALUES (:password, :email)');
    				$insert_both->execute(array(':password'=>$np, ':email'=>$_POST['email']));
    			}
    			else
    			{
    				$erreur .='Les deux mots de passe ne correspondent pas !'; 
    			}
    		}
    		else
    		{
    			$erreur .='Le mot de passe actuel ne correspond pas avec celui en base !'; 	 
    		}
    	}
    	if ($empty != 1 && !empty($_POST['apass'])) 		// Présence de l'@ en base  +  chgt de mot de passe
    	{
    		if ($donnees_active['password'] == MD5($_POST['apass']))  // Si l'ancien password correspond a celui stocké en base
    		{
    			if ($_POST['npass'] == $_POST['cnpass'])   	// Si les deux nouveaux pass correspondent
    			{
    				$np = MD5($_POST['npass']);
    				$insert_both = $bdd->prepare('INSERT INTO config_users (password, email) VALUES (:password, :email)');
    				$insert_both->execute(array(':password'=>$np, ':email'=>$_POST['email']));
    			}
    			else
    			{
    				$erreur .='Les deux mots de passe ne correspondent pas !'; 
    			}
    		}
    		else
    		{
    			$erreur .='Le mot de passe actuel ne correspond pas avec celui en base !'; 	 
    		}
    	}
    }
    else
    {
    	$erreur.='Erreur dans les informations que vous avez rentré !';
    }
     
    ?>
    <form id="info" action="userinfo.php" method="post">
    	<h1>Vos informations</h1>
    		<fieldset id="inputs">
    				<label for="password">Ancien mot de passe :</label>		
    			<input id="apassword" type="password" name="apass" placeholder="Mot de passe">
    				<label for="password">Nouveau mot de passe :</label>		
    			<input id="npassword" type="password" name="npass" placeholder="Mot de passe">
    				<label for="password">Confirmer le nouveau mot de passe :</label>		
    			<input id="cnpassword" type="password" name="cnpass" placeholder="Mot de passe">
    				<label for="mail">Adresse mail :</label>
    			<input id="mail" type="mail" name="email" value ="<?php if ($empty != 1) { echo  $mail['email'] } ?>" required>		
    		</fieldset>	
     
    		<fieldset id="actions">
    			<input id="submit" class="button" name="enregistrer" type="submit" value=" Enregistrer ">
    			<input id="cancel" class="button" name="annuler" type="reset" value="Annuler">			
    		</fieldset>
    </form>
    </body>

  16. #16
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 096
    Points : 4 437
    Points
    4 437
    Par défaut
    ton if ($empty == 1 )
    ton if ($echec == 1 ) // normalement ligne 11 !!
    je connaissais pas mais si tu aimes et c'est plus simple pour toi ? mais pour moi c'est compliqué pour rien ...

    Sinon pour le reste du code ?
    a toi de tester et de revenir si tu as des erreurs non résolvables.
    $moi= ( !== ) ? : ;

  17. #17
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    Voici la syntaxe la plus lisible de mon point de vue.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo isset($mail['email'])?$mail['email']:'' ?>
    Mais si on commence a parler lisibilité du code, on a beaucoup a débattre :p

  18. #18
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Premier jet d'erreurs :

    Ma variable $_SESSION['login'] n'a pas l'air de fonctionner... Au début il me met Undefined.
    Du coup -> if (isset($_POST['apass'], ..., $_SESSION['login'])) mais on ne rentre plus dans la condition à cause du $_SESSION['login']...

    Deuxième erreur, je n'ai pas l'affichage de l'adresse mail dans la zone de texte que ce soit avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input id="mail" type="mail" name="email" value ="<?php isset($mail['email'])?$mail['email']:''?>" required>
    Idem avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id="mail" type="mail" name="email" value ="<?php if ($empty != 1) { echo  $mail['email'] } ?>" required>

  19. #19
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 096
    Points : 4 437
    Points
    4 437
    Par défaut
    Ma variable $_SESSION['login'] n'a pas l'air de fonctionner...
    Citation Envoyé par papajoker Voir le message
    Normalement on enregistre l'id de l'utilisateur dans la session au moment du login
    Il faut peut-être être déjà connecté ?
    il faut peut-être écrire le script de connexion ? avec sauvegarde du login
    $moi= ( !== ) ? : ;

  20. #20
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    C'est déjà tout fait !

    connexion.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
    try
    {
    	$strConnexion = 'mysql:host=xxx;dbname=xxx';
    	$arrExtraParam = array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
    	$pdo = new PDO($strConnexion, 'xxx', '', $arrExtraParam);
    	$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO:: ERRMODE_EXCEPTION);
    	$bdd = new PDO('mysql:host=localhost;dbname=xxx', 'xxx', 'xxx');
    }
    catch(PDOException $e)
    {
    	$msg = 'Erreur PDO dans ' . $e->getFile() . ' L.' .$e->getLine() . ' : ' . $e->getMessage();
    	die($msg);
    	die('Erreur : ' . $e->getMessage());
    }
    login.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
    <?php
    	header('Location : index.php?page=index'); 
    	require("config.php");
    	require("connexion.php");
    	include("fonctions.php");
    	session_start();
    	$erreur="<p style='color:red;font-size: 12px;'>";
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    <link rel="stylesheet" type="text/css" href="./CSS/login.css"/>
    <title>CQuest - Connexion</title>
    </head>
    <body>
    <?php
     
    if (isset($_POST['connexion'], $_POST['login'], $_POST['pass']))
    {
    	$user_active = $bdd->query('SELECT active FROM config_users WHERE login ="' . $_POST['login'] .'" ') or $user_active = 0; //die(print_r($bdd->errorInfo()));
    	$donnees_active = $user_active->fetch();
     
    	if (!empty($_POST['check']) && $donnees_active['active'] == 1)
    	{	
    		$port = "389";
    		$racine = "DC=xxx,DC=xxx,DC=xxx";
    		$rootdn = "AD\\".$_POST['login'];
    		$rootpw = str_replace("xxx","xx",MD5($_POST['pass']));
    		$connexion_server = ldap_connect('xxx') or $connexion_test = 1 ;
    		ldap_set_option($connexion_server, LDAP_OPT_PROTOCOL_VERSION, 2);
    		print "<BR>connexion serveur? $connexion_server<BR>";
     
    		if($connexion_server != 1)
    		{	
    			$ldapbind = ldap_bind($connexion_server, $rootdn, $rootpw);
     
    			if ($ldapbind)			// Vérification de l'authentification
    			{
    				$erreur.="Connexion LDAP réussie...";
    				$erreur.="USER OK";
    				session_start(); 	//demarrage de la session
    				$_SESSION['login'] = $_POST['login']; 	
    				header('Location: index.php?page=analyse');
    			}
    			else 
    			{
    				$erreur.="Connexion LDAP échouée...";
    				$erreur.="Login ou mot de passe incorect !";
    			}
    				ldap_close($connexion_server);
    		} 
    		else 	// Si aucune réponse, l'utilisateur s'est trompé dans ses logs ou n'est pas encore activé
    		{ 
    			$erreur .='Compte non reconnu ou non enregistré.'; 				
    		} 
    	}
    	else if (empty($_POST['check']) && $donnees_active['active'] == 1)
    	{
     
    		$_SESSION['login'] = $_POST['login'];  
    		exit(header("Location: index.php?page=analyse"));    // Pas d'espace entre Location et les ' : '
    		header('Location : '); 
    		$erreur .='Pas d erreur';
    	}
    	else
    	{
    		$erreur .='Compte non reconnu ou non enregistré.';
    	}
    }
    ?>
    <form id="login" action="login.php" method="post">
    	<h1>CQuest</h1>
    		<?php
    			echo $erreur."</p>";
    		?>
    		<fieldset id="inputs">
    				<label for="username">Identifiant :</label>
    			<input id="username" type="text" name="login" placeholder="Login" autofocus required>  
    				<label for="password">Mot de passe :</label>		
    			<input id="password" type="password" name="pass" placeholder="Mot de passe" required>
    		</fieldset>	
     
    		<fieldset id="AD">		
    				<input type="checkbox" value="1" id="connexionad" name="check" checked="checked"/>
    				<label for="connexionad">Connexion avec les identifiants de l'AD</label>			
    		</fieldset>
     
    		<fieldset id="actions">
    			<input type="submit" name="connexion" id="submit" value="Connexion">
    			<p><a href="register.php">S'enregistrer</a>
    			<a href="password.php" >Mot de passe perdu ? </a></p>
    		</fieldset>
    </form>
    </body>

    Du coup il manque la sauvegarde de la variable $_SESSION... Après avoir regarder quelques posts sur internet je ne suis pas beaucoup plus avancé.
    Mis à part une session_start(); au début du premier programme.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Formulaire - Mise à jour des informations lors d'un filter
    Par laulau49 dans le forum VBA Access
    Réponses: 5
    Dernier message: 17/09/2010, 08h30
  2. Recherche et mise à jour d'information
    Par Roddk dans le forum Autres
    Réponses: 0
    Dernier message: 06/08/2010, 17h43
  3. Mise à jour des informations
    Par moraito dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 14/04/2010, 11h55
  4. Mise à jour d'information sous IE
    Par Arkante dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/05/2008, 12h26

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