L'utilisateur reste connecter sur tout les page de mon site
Résolu
mobrobot
Messages postés
173
Date d'inscription
Statut
Membre
Dernière intervention
-
mobrobot Messages postés 173 Date d'inscription Statut Membre Dernière intervention -
mobrobot Messages postés 173 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Rester connecté sur un site
- Site comme coco - Accueil - Réseaux sociaux
- Site de telechargement - Accueil - Outils
- Se connecter à gmail sur téléphone - Guide
- Quel site remplace coco - Accueil - Réseaux sociaux
- Site x - Guide
5 réponses
Bonjour,
As tu démarré les SESSION dans ton script ? Je ne vois pas le session_start ?
Ensuite... applique ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs (l'affichage des erreurs PHP en plus des PDO que tu as déjà )
et ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Au cas où, montre nous le code COMPLET de ce fichier et non juste un petit bout ....
Cordialement,
Jordane
As tu démarré les SESSION dans ton script ? Je ne vois pas le session_start ?
Ensuite... applique ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs (l'affichage des erreurs PHP en plus des PDO que tu as déjà )
et ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Au cas où, montre nous le code COMPLET de ce fichier et non juste un petit bout ....
Cordialement,
Jordane
Mon nouveau code:
error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //Connexion a la base de donnees require 'dbconnectM.php'; if(isset($_SESSION['id'])){ $sql = "SELECT * FROM membres WHERE id = ?"; $datas = (array($_SESSION['id'])); try{ $req = $bdd->prepare($sql); $req->execute($datas); }catch(Exception $e){ echo 'Erreur : !' .$e->getMessage(); echo "Les datas"; print_r($datas); } $resultat = $req->fetch(); ?> <h3><?php echo $resultat['pseudo']; ?></h3> <?php } ?> <?php>
le fichier de connexion a la base donnees
try{ $bdd =new PDO('mysql:host=localhost;dbname=membres_du_site; charset=utf8', 'root', ''); // Activation des erreurs PDO $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); }
Et le session_start ?
Essaye ça
Essaye ça
<?php //démarrage des sessions ( à mettre sur TOUTES tes pages) session_start(); error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //Connexion a la base de donnees require_once 'dbconnectM.php'; //récupération PROPRE des variables AVANT de les utiliser $id = !empty($_SESSION['id']) ? $_SESSION['id'] : NULL; if($id){ $sql = "SELECT * FROM membres WHERE id = ?"; $datas = array($id); try{ $req = $bdd->prepare($sql); $req->execute($datas); $resultat = $req->fetch(); }catch(Exception $e){ echo 'Erreur : !' .$e->getMessage(); echo "Les datas"; print_r($datas); } if(!empty($resultat)){ echo "<h3>".$resultat['pseudo']."</h3>"; } } else{ echo " AUCUN ID ! "; // à laisser juste le temps des tests } ?>
Ou encore mieux...
<?php //démarrage des sessions ( à mettre sur TOUTES tes pages) session_start(); error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //Connexion a la base de donnees require_once 'dbconnectM.php'; //---------------------------------------------------// //fonctions //---------------------------------------------------// /** * Faire une requête SELECT et retourne 1 ligne */ function querySelectOneRow($sql,$datas=NULL){ global $bdd; $resultat = NULL; try{ $req = $bdd->prepare($sql); $req->execute($datas); $resultat = $req->fetch(); }catch(Exception $e){ echo 'Erreur : !' .$e->getMessage(); echo "Les datas"; print_r($datas); } return $resultat; } /** * Récupère les infos d'un user en fonction de son ID */ function getUserInfosById($id){ $sql = "SELECT * FROM membres WHERE id = ?"; $datas = array($id); return querySelectOneRow($sql,$datas); } //récupération PROPRE des variables AVANT de les utiliser $id = !empty($_SESSION['id']) ? $_SESSION['id'] : NULL; if($id){ $resultat = getUserInfosById($id); if(!empty($resultat)){ echo "<h3>".$resultat['pseudo']."</h3>"; } } else{ echo " AUCUN ID ! "; // à laisser juste le temps des tests } ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
sa fonction sa m'affiche le pseudo de la personne connecter. Mais quand je me déconnecter il rester toujours affiche sur la page
voici la page de déconnexion
j'ai mis les
session_start(); //setcookie("pseudo"," ",time()-3600); //setcookie("pass"," ",time()-3600); $_SESSION = array(); session_destroy(); header("Location: connecter.php");
j'ai mis les
setcookieen commentaire pars que il n'arrive pas aussi a effacée le pseudo de la personne connecter et le mot de passe dans optiondéveloppement ...