Comment afficher l email de l utilisateur dans une autre page [Résolu]

Signaler
Messages postés
2905
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
12 juin 2021
-
Messages postés
2905
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
12 juin 2021
-
bonjour a tous
j ai un espace membre
et je souhaiterais pouvoir récupérer le mail de l utilisateur pour l afficher sur une page
lorsque je fais ceci je ne vois que le pseudo

<?php
session_start();
var_dump($_SESSION);


je pense que je dois configurer cela dans ma page de connexion , mais comment ??

<?php 
    session_start();
 //   require_once 'config.php';
  require_once 'config.php';
    if(!empty($_POST['pseudo']) && !empty($_POST['password']))
    {
        $pseudo = htmlspecialchars($_POST['pseudo']);
        $password = htmlspecialchars($_POST['password']);

        $check = $bdd->prepare('SELECT pseudo, password FROM utilisateurs WHERE pseudo = ?');
        $check->execute(array($pseudo));
        $data = $check->fetch();
        $row = $check->rowCount();

        if($row == 1)
        {
           
                
                if(password_verify($password, $data['password']))
                {
                  $_SESSION['user'] = array('id'=>$data['id'], 'pseudo'=>$data['pseudo']) ;
                   $_SESSION['pseudo'] = $data['pseudo'];
                   
                      header('Location: accueil-peche-perle.php?pseudo='.$_SESSION['pseudo']);
                    die();
                }else{ header('Location: index.php?login_err=password'); die(); }
          
        }else{ header('Location: index.php?login_err=already'); die(); }
    }

5 réponses

Messages postés
32943
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557
Bonjour,

C'est normal vu que tu ne stockes pas en session son email.
Il faut donc ajouter l'instruction sur le même modèle que tes lignes 21 et 22... et bien entendu, modifier la requête sql pour inclure ce champ dans le résultat de la requête.
Messages postés
218
Date d'inscription
jeudi 5 mai 2016
Statut
Membre
Dernière intervention
22 mai 2021
169
Bonsoir,

Vous avez créer une variable session avec le pseudo alors selon toutes logique il suffit de faire la même chose pour l'adresse e-mail.
Messages postés
2905
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
12 juin 2021
138
merci Jordanne et popozz
donc de cette manière
$_SESSION['user'] = array('id'=>$data['id'], 'email'=>$data['email']) ;
                   $_SESSION['email'] = $data['email'];
Messages postés
32943
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557
Je n'avais pas bien vu ton code.
Donc retire la ligne 22
et complète la ligne 21
   $_SESSION['user'] = array('id'=>$data['id'], 'pseudo'=>$data['pseudo'], 'email'=>$data['email']) ;

sans oublier, comme je te l'ai dit dans ma précédente réponse, d'adapter également ta requête SQL qui, pour l'instant, ne remonte par cette information.
Messages postés
2905
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
12 juin 2021
138
ah jordane
tu as droit a une médaille cela est top un grand merci
tiens au fait que penses tu de mon fichier de connexion
mis a part que je dois retirer les
htmlspecialchars
Messages postés
32943
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
3 557
Pas trop mal à part que la méthode rowCount ne doit pas être utilisée en PDO sur une requête de type Select.

À la place de
$row = $check->rowCount();

        if($row == 1)
        {


Fais
if(!empty($data)) {
Messages postés
2905
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
12 juin 2021
138
merci jordane
j essaye cela demain