AFFICHER DES MEMBRES EN FONCTION D'UNE SESSION
Résolu
ameb2908
Messages postés
95
Statut
Membre
-
ameb2908 Messages postés 95 Statut Membre -
ameb2908 Messages postés 95 Statut Membre -
Bonjour,
je voudrais afficher tous les membres en dehors de la session & une fois connecter je les veux tous sauf le membre connecter.
Voici mon code :
class/utilisateurManager.php
<?php
class utilisateurManager {
private $_db;
public function __construct($db) {
$this->setDb($db);
}
public function setDb(PDO $dbh) {
$this->_db = $dbh;
}
public function readUsersIdData($id = '') {
try {
if(empty($id)) {
$sql = 'SELECT id, pseudo FROM utilisateur ';
$rs_select = $this->_db->prepare($sql);
}
elseif(is_numeric($id)) {
$sql = 'SELECT id, pseudo FROM utilisateur WHERE id != :id';
$rs_select = $this->_db->prepare($sql);
$rs_select->bindParam(':id', $id);
$rs_select->execute();
}
while($user_data = $rs_select->fetch(PDO::FETCH_ASSOC)) {
$users_data[] = $user_data;
}
return $users_data;
}
catch(PDOException $e) {
echo 'Une erreur est survenue lors de la requête de sélection !';
echo '<br>';
echo 'Message d\'erreur : ' . $e->getMessage();
}
}
public function readUsersData() {
try {
$sql = 'SELECT id, pseudo, mail, role FROM utilisateur';
$rs_select = $this->_db->prepare($sql);
$rs_select->execute();
while($user_data = $rs_select->fetch(PDO::FETCH_ASSOC)) {
$users_data[] = $user_data;
}
return $users_data;
}
catch(PDOException $e) {
echo 'Une erreur est survenue lors de la requête de sélection !';
echo '<br>';
echo 'Message d\'erreur : ' . $e->getMessage();
}
}
}
profil/membres.php
<?php
session_start();
require('../include/inc-connexion.php');
require('../class/utilisateurManager.php');
$manager = new utilisateurManager($db);
$id = $_SESSION['id'];
if(isset($id)) {
$user_data = $manager->readUsersIdData($id);
}
else {
$user_data = $manager->readUsersData();
}
?>
<!doctype html>
<html lang="fr">
<head>
<title>Membres</title>
<?php require('../include/inc-meta.php'); ?>
<?php require('../include/inc-link.php'); ?>
</head>
<body>
<?php require('../include/inc-menu.php'); ?>
<div class="container">
<div class="row">
<div class="col-12">
<h1>Membres</h1>
</div>
<?php if(!empty($user_data)) : ?>
<?php foreach($user_data as $users_data) : ?>
<div class="col-3">
<?php echo $users_data['pseudo']; ?>
<div>
<a href="voir-profil.php?id=<?php echo $users_data['id']; ?>">Voir profil</a>
</div>
</div>
<?php endforeach ?>
<?php endif ?>
</div>
</div>
<?php require('../include/inc-footer.php'); ?>
Merci pour votre aide.
Windows / Chrome 117.0.0.0
A voir également:
- AFFICHER DES MEMBRES EN FONCTION D'UNE SESSION
- Fonction si et - Guide
- Afficher google en page d'accueil - Guide
- Afficher taille dossier windows - Guide
- Veuillez ouvrir une session avec les privilèges du gestionnaire ✓ - Forum Jeux vidéo
- Www.yahoomail.com ouverture de session ✓ - Forum Yahoo mail
2 réponses
Bonjour
Quel est ton souci exactement ?
As tu testé tes requêtes directement dans ta base (via phpmyamdin par exemple) ? Obtiens tu le résultat escompté ?
Au passage, applique ce qui est indiqué ici https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
(Tout particulièrement pour ta ligne 9)