Session PHP

papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   -  
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour

Je souhaiterai avoir un peu d'aide concernant l'affichage de SESSION.
En fait un membre peu se connecter et lorsqu'il est connecté il arrive sur son profil et là je voudrais lui afficher ses coordonnés.
Pour l'instant son profil est vide.
Voilà la classe
<?php
class Compte_profil_class {

	private $id_adherent;
    private $nom;
    private $prenom;	
    private $email;
	private $naissance;
    private $fixe;
    private $mobile;
	private $adresse;
	private $lieu_dit;
	private $code_postal;
	private $ville;
	private $pseudo;

	private $bdd;
	
	public function __construct() {

		$this->id_adherent	= isset($_POST['id_adherent']) ? $_POST['id_adherent'] : '';
		$this->nom			= isset($_POST['nom']) ? $_POST['nom'] : '';
		$this->prenom		= isset($_POST['prenom']) ? $_POST['prenom'] : '';
		$this->email     	= isset($_POST['email']) ? $_POST['email'] : '';
		$this->naissance	= isset($_POST['naissance']) ? $_POST['naissance'] : '';
		$this->fixe			= isset($_POST['fixe']) ? $_POST['fixe'] : '';
		$this->mobile		= isset($_POST['mobile']) ? $_POST['mobile'] : '';
		$this->adresse		= isset($_POST['adresse']) ? $_POST['adresse'] : '';
		$this->lieu_dit     = isset($_POST['lieu_dit']) ? $_POST['lieu_dit'] : '';
		$this->code_postal	= isset($_POST['code_postal']) ? $_POST['code_postal'] : '';
		$this->ville		= isset($_POST['ville']) ? $_POST['ville'] : '';
		$this->pseudo		= isset($_POST['pseudo']) ? $_POST['pseudo'] : '';
		
		$this->bdd 			= bdd();
	}
	
    public function CompteProfil() {
        $sql = "SELECT * FROM tb_adherent WHERE id_adherent = :id_adherent";
		$requete = $this->bdd->prepare($sql);
        $requete->execute(array('id_adherent' => $this->id_adherent));
    
        while($donnees = $requete->fetchObject()) {
            echo '<tr>';
            echo '<td>'.$donnees->nom.'</td>';
            echo '<td>'.$donnees->prenom.'</td>';
            echo '<td>'.$donnees->email.'</td>';
			echo '<td>'.$donnees->naissance.'</td>';
            $tel1 = $donnees->fixe; $tel1 = wordwrap ($tel1, 2, ' ', 1);
            echo '<td>'.$tel1.'</td>';
            $tel2 = $donnees->mobile; $tel2 = wordwrap ($tel2, 2, ' ', 1);
            echo '<td>'.$tel2.'</td>';
            echo '</tr>';
        }
    }
}

et la page pour l'affichage de son profil
<h2>Mon espace</h2>

<br/>

<table class="CompteProfil" border="3">
	<tr>
		<th>Nom</th>
		<th>Prénom</th>
		<th>Adresse Mail</th>
		<th>Date Naissance</th>
		<th>Tél. Fixe</th>
		<th>Tél. Mobile</th>
	</tr>
<?php
$compte_profil = new Compte_profil_class();
$compte_profil->CompteProfil();
?>
</table>
Par contre aucune erreur est retournée le tableau est vide.
Je vous remercie pour votre aide éventuelle.
A voir également:

5 réponses

ElementW Messages postés 4814 Date d'inscription   Statut Contributeur Dernière intervention   1 223
 
'lut, c'est normal: ta table de BDD est vide, car à aucun moment tu n'enregistres les données du compte dedans.

Aussi, ce que tu as mis dans le constructeur de Compte_profil_class devrait être mis dans une fonction inscrire() par exemple, sinon tu vas a chaque fois chercher des infos dans les paramètres $_POST alors qu'elles n'y seront que lors de l'inscription.
from human import idiocy
del idiocy
2
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,


 public function CompteProfil() {
        $sql = "SELECT * FROM tb_adherent WHERE id_adherent = :id_adherent";
	$requete = $this->bdd->prepare($sql);
        $requete->execute(array('id_adherent' => $this->id_adherent));

        $result ='';
        while($donnees = $requete->fetchObject()) {
            $result .='<tr>';
            $result .='<td>'.$donnees->nom.'</td>';
            $result .= '<td>'.$donnees->prenom.'</td>';
            $result .= '<td>'.$donnees->email.'</td>';
	    $result .= '<td>'.$donnees->naissance.'</td>';
            $tel1 = $donnees->fixe; $tel1 = wordwrap ($tel1, 2, ' ', 1);
            $result .= '<td>'.$tel1.'</td>';
            $tel2 = $donnees->mobile; $tel2 = wordwrap ($tel2, 2, ' ', 1);
            $result .= '<td>'.$tel2.'</td>';
            $result .= '</tr>';
        }
  return $result;
    }



<?php
$compte_profil = new Compte_profil_class();
echo $compte_profil->CompteProfil();
?>


0
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour
Déjà merci pour vos retour.
pour répondre à "gravgun" ma connexion à ma BDD est fonctionnelle et pour les inscription des membre ça se passe bien idem pour la connexion.
Lorsqu'un membre se connecte avec ses identifiant ça lui affiche également "Bonjour Paul" donc le compte est bien reconnu.
C'est uniquement lors de l'affichage que les infos du membre ne s'affiche pas.
Je suis désolé "jordane45" rien ne se passe. Je dois passer à côté de quelque chose mais mon expérience m'empêche de savoir pourquoi.
Alors vraiment sympa de m'aider sur ce sujet comme tu l'a déjà fait pour d'autres posts.
0
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour
Je reviens vers vous pour l'affichage des SESSION, je dois passer à côté de quelque chose mais je ne sais quoi.
Pouvez vous me guider un peu s'ils vous plait.
Je vous remercie.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour
Je ne comprends toujours pas pourquoi les infos du membre après être connecté ne s'affichent pas.
Pouvez-vous me donner un coup de main s'ils vous plait.
Je vous remercie
Voici ma class
<?php
class Compte_profil_class {

	private $id_adherent;
    private $nom;
    private $prenom;	
    private $email;
	private $naissance;
    private $fixe;
    private $mobile;
	private $adresse;
	private $lieu_dit;
	private $code_postal;
	private $ville;
	private $pseudo;

	private $bdd;
	
	public function __construct() {

		$this->id_adherent	= isset($_POST['id_adherent']) ? $_POST['id_adherent'] : '';
		$this->nom			= isset($_POST['nom']) ? $_POST['nom'] : '';
		$this->prenom		= isset($_POST['prenom']) ? $_POST['prenom'] : '';
		$this->email     	= isset($_POST['email']) ? $_POST['email'] : '';
		$this->naissance		= isset($_POST['naissance']) ? $_POST['naissance'] : '';
		$this->fixe			= isset($_POST['fixe']) ? $_POST['fixe'] : '';
		$this->mobile		= isset($_POST['mobile']) ? $_POST['mobile'] : '';
		$this->adresse		= isset($_POST['adresse']) ? $_POST['adresse'] : '';
		$this->lieu_dit     	= isset($_POST['lieu_dit']) ? $_POST['lieu_dit'] : '';
		$this->code_postal	= isset($_POST['code_postal']) ? $_POST['code_postal'] : '';
		$this->ville			= isset($_POST['ville']) ? $_POST['ville'] : '';
		$this->pseudo		= isset($_POST['pseudo']) ? $_POST['pseudo'] : '';
		
		$this->bdd 			= bdd();
	}
	
    public function CompteProfil() {
        $sql = "SELECT * FROM tb_adherent WHERE id_adherent = :id_adherent";
		$requete = $this->bdd->prepare($sql);
        $requete->execute(array('id_adherent' => $this->id_adherent));
    
        while($donnees = $requete->fetchObject()) {
            echo '<tr>';
            echo '<td>'.$donnees->nom.'</td>';
            echo '<td>'.$donnees->prenom.'</td>';
            echo '<td>'.$donnees->email.'</td>';
			echo '<td>'.$donnees->naissance.'</td>';
            $tel1 = $donnees->fixe; $tel1 = wordwrap ($tel1, 2, ' ', 1);
            echo '<td>'.$tel1.'</td>';
            $tel2 = $donnees->mobile; $tel2 = wordwrap ($tel2, 2, ' ', 1);
            echo '<td>'.$tel2.'</td>';
            echo '</tr>';
        }
    }
}

et la page qui devrais afficher les infos du membre connecté
<h2>Mon espace</h2>

<br/>

<table class="CompteProfil" border="3">
	<tr>
		<th>Nom</th>
		<th>Prénom</th>
		<th>Adresse Mail</th>
		<th>Date Naissance</th>
		<th>Tél. Fixe</th>
		<th>Tél. Mobile</th>
	</tr>
<?php
$compte_profil = new Compte_profil_class();
$compte_profil->CompteProfil();
?>
</table>
0