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 :

Afficher le nom utilisateur


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut Afficher le nom utilisateur
    Bonjour,

    J'ai une page connexion.php sur laquelle on saisit le nom utilisateur et le mot de passe.
    Sur la page index.php j'affiche le nom utilisateur (si il est correcte) et un lien pour déconnecter.
    Tout fonctionne mais je ne comprends pas pourquoi je dois valider 2 fois le formulaire pour que le nom utilisateur apparaisse sur la page index.
    code de la page index :
    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
    <?php
    session_start();
    if(isset($_GET['deconnexion']) && $_GET['deconnexion']=="1"){
    	session_unregister('id_proprietaire');
    	session_unregister('utilisateur');
    	session_unregister('niveau');
    	session_destroy();
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    .....
    <td><img src="images/principal/cine.jpg" style=""><img src="images/principal/lumiere.jpg" style=""><img src="images/principal/dvd.jpg" style=""></td>
    <td align="center"><span class="grand">Médiathèque</span><br /><br />
    	<?php if (isset($_SESSION['id_proprietaire'])) { 
    echo $_SESSION['utilisateur']; 
    echo" <a href=index.php?deconnexion=1>d&eacute;connexion</a>";
    }
    ?></td>
    sur la page 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
    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
    <?php
    require('fonctionsphp.php');
    require('connect.php');
    $message = "";
    if (isset($_POST['utilisateur']))	$utilisateur = $_POST['utilisateur'];
    else $utilisateur ="";
    if (isset($_POST['password']))	$password = $_POST['password'];
    else $password ="";
    if (isset($_POST['bouton_connexion'])){
    	if ((!empty($_POST['utilisateur'])) || (!empty($_POST['password']))){
    		$passw= sha1($_POST['password']);
    		$sql = mysql_query("SELECT * FROM proprietaires WHERE user = '$utilisateur' AND pass = '$passw'");
    		if (mysql_num_rows($sql) > 0){
    			$res = mysql_fetch_array($sql);
    			$id_proprietaire = $res['id_proprietaire'];
    			$user_table = $res['user'];
    			$pass_table = $res['pass'];
    			$niveau = $res['niveau'];
    			$_SESSION['utilisateur'] = $user_table;
    			$_SESSION['id_proprietaire'] = $id_proprietaire;
    			$_SESSION['niveau'] = $niveau;
    			$message = "<p style='color:blue'>Vous êtes connecté !</p>";
    		}
    		else {
    			$message = "<p style='color:blue'>Nom utilisateur ou mot de passe non valide !</p>";
    		}
    	}
    }
    ?>
    <div style="margin-left:170px; margin-top:40px">
    <br />
    <form name="connexion" method="POST" action="index.php?page=connexion">
    <table border=0>
    	<tr>
    		<td align='right'>Nom utilisateur :&nbsp;</td><td><input type="text" name="utilisateur" value="<?php echo $utilisateur;?>"></td>
    	</tr>
    	<tr>
    		<td align='right'>Mot de passe :&nbsp;</td><td><input type="password" name="password" value="<?php echo $password;?>"></td>
    	</tr>
     
    	<tr height="35px" valign="bottom">
    		<td></td><td><input type="submit" name="bouton_connexion" value="valider" style="width:100px; height:20px; font-size:12px"></td>
    	</tr>
    </table>
    </form>
    <?php	echo $message;?>
    </div>
    Est ce que quelqu'un peut me dire pourquoi je dois valider 2 fois pour afficher le nom utilisateur ?

  2. #2
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    Salut,

    Quand tu valides ton formulaire tu vas directement sur ton index.php sans vérifier les données du formulaire. Il faudrait que tu pointes ton form sur connexion.php et si tu trouves le nom et mot de passe tu rediriges vers ton index.php. Ex en javascript (l'utilisation des headers serait plus propre ) :
    <script type="text/javascript"> document.location.replace("chemin/index.php");</script>

  3. #3
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut
    Mon formulaire est controlé ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (isset($_POST['utilisateur']))	$utilisateur = $_POST['utilisateur'];
    else $utilisateur ="";
    if (isset($_POST['password']))	$password = $_POST['password'];
    else $password ="";
    Pour le moment, c'est ma page connexion.php qui est rechargée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="connexion" method="POST" action="index.php?page=connexion">
    Pourquoi je devrais faire un replace?

  4. #4
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut
    Je ne suis passé par js.
    J'ai ajouté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('location:index.php?page=accueil');
    Si tout est ok ça m'affiche ma page d'accueil si non je reviens sur la page de connexion

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

Discussions similaires

  1. [AC-2003] Afficher nom utilisateur / barre d'etat
    Par Feuztoff dans le forum IHM
    Réponses: 0
    Dernier message: 19/02/2014, 20h06
  2. [AC-2003] Afficher nom utilisateur / barre d'etat
    Par Feuztoff dans le forum IHM
    Réponses: 1
    Dernier message: 16/02/2014, 18h02
  3. [Vxi] XI 4 - Afficher le nom de l'utilisateur
    Par bobobo7569 dans le forum Webi
    Réponses: 1
    Dernier message: 12/03/2012, 10h56
  4. Récupérer et afficher le nom d'utilisateur
    Par javelot69 dans le forum Access
    Réponses: 33
    Dernier message: 07/08/2006, 09h37

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