Perte de donnée dans ma session (PHP)
Résolu/Fermé
Scrammy
Messages postés
2
Date d'inscription
mercredi 7 février 2007
Statut
Membre
Dernière intervention
7 février 2007
-
7 févr. 2007 à 10:39
T0T0 - 6 juil. 2007 à 21:50
T0T0 - 6 juil. 2007 à 21:50
A voir également:
- Perte de donnée dans ma session (PHP)
- Reinstaller windows sans perte de données - Guide
- Sfr perte abonnés - Guide
- Easy php - Télécharger - Divers Web & Internet
- Facebook session expirée ✓ - Forum Facebook
- Retour a la ligne php ✓ - Forum PHP
2 réponses
Scrammy
Messages postés
2
Date d'inscription
mercredi 7 février 2007
Statut
Membre
Dernière intervention
7 février 2007
7 févr. 2007 à 15:21
7 févr. 2007 à 15:21
Probleme résolut!!!!! :)
Explication (si ça peut servir à d'autre):
Il se trouve que dans ma page d'authentification, là où j'initialisais la session j'utilisais certaines variables tel que:
Ensuite, dans ma page d'acceuil, je récupérai ces variables directement pour les utiliser donc je n'avais pas de soucis.
Mais dans mon autre page (page de visualisation sur un mois de ce qu'a fait la personne) je n'utilisais que $_SESSION['ident']. Pour le reste, j'étais obliger d'aller chercher chaque jours du mois dans ma base de données MySQL. Et c'est là d'où viens le problème. Je réutilisais les même noms de variable que dans ma page d'authentification. Et cela apparemment me faisais sauter toutes les variables de session identique. (je ne sais pas si je me fais bien comprendre.
Voici l'exemple pour plus de précision:
page log_utilisateur.php:
page acceuil.php:
Je vais vous montrer en gros ce que j'avais fait.
page visualisation_mois.php:
De ce que j'ai compris de ce problème est donc que j'aurai dû nommer autrement ma variable $historique_journaliere, car en l'utilisant j'aurai vraisemblablement "casser" ma variable de session $_SESSION['historique_journalier'].
j'espère avoir été assez clair dans mon explication.
Si quelqu'un a une explication moins "barbare", qui le dise! ça peut etre interressant d'entendre une explication plus rationnel.
Explication (si ça peut servir à d'autre):
Il se trouve que dans ma page d'authentification, là où j'initialisais la session j'utilisais certaines variables tel que:
$_SESSION['historique_journalier'] = $historique_journalier
Ensuite, dans ma page d'acceuil, je récupérai ces variables directement pour les utiliser donc je n'avais pas de soucis.
Mais dans mon autre page (page de visualisation sur un mois de ce qu'a fait la personne) je n'utilisais que $_SESSION['ident']. Pour le reste, j'étais obliger d'aller chercher chaque jours du mois dans ma base de données MySQL. Et c'est là d'où viens le problème. Je réutilisais les même noms de variable que dans ma page d'authentification. Et cela apparemment me faisais sauter toutes les variables de session identique. (je ne sais pas si je me fais bien comprendre.
Voici l'exemple pour plus de précision:
page log_utilisateur.php:
session_start(); ....// Ici c'est ma connexion à la base + formulation de la requete + envoie de la requete $ident = mysql_fetch_array($requeteSql); ....// Ici c'est ma connexion à la base + formulation de la requete + envoie de la requete $historique_journalier = mysql_fetch_array($requeteSql); ....// Ici c'est ma connexion à la base + formulation de la requete + envoie de la requete $journalier = mysql_fetch_array($requeteSql); $_SESSION['ident'] = $ident; $_SESSION['historique_journalier '] = $historique_journalier ; $_SESSION['journalier '] = $journalier ; .... mysql_close();
page acceuil.php:
session_start(); $ident = $_SESSION['ident']; $historique_journalier = $_SESSION['historique_journalier ']; $journalier = $_SESSION['journalier ']; echo "Bonjour ".$ident["nom"]."<br>"; echo "Vous vous etes connecter à ".$journalier["heures_conect"]."<br>; echo "Hier vous avez deconnecter à ". $historique_journalière["heure_deconnect"];
Je vais vous montrer en gros ce que j'avais fait.
page visualisation_mois.php:
session_start(); $ident = $_SESSION['ident']; // ON selectionne dans la base MySql les champs corespondant à $ident['identifiant'] dans la table "historique_journalier" pour le mois dernier sauvegarder dans $historique_journalier. $i=0; while($historique_journalier[$i] = mysql_fetch_array($requeteSql))$i++; for($jours=1; $jours<= date("t",mktime(0,0,0,(date("m")-1), 1, date('Y"))) // boucle du 1er au dernier jours du mois en cours { echo "Le "$jours."/".(date("m")-1)."/".date("Y")." ".$ident["nom"]." s'est connecté à ".$historique_journalier[($jours-1)]["heures_conect"]." et s'est deconnecté à ". $historique_journalier [($jours-1)]["heure_deconnect"]; } ...
De ce que j'ai compris de ce problème est donc que j'aurai dû nommer autrement ma variable $historique_journaliere, car en l'utilisant j'aurai vraisemblablement "casser" ma variable de session $_SESSION['historique_journalier'].
j'espère avoir été assez clair dans mon explication.
Si quelqu'un a une explication moins "barbare", qui le dise! ça peut etre interressant d'entendre une explication plus rationnel.