Récupérer variable (session) PHP
Fermé
JJblow
-
29 juil. 2009 à 15:38
JJBlow Messages postés 44 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 6 novembre 2010 - 30 juil. 2009 à 14:44
JJBlow Messages postés 44 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 6 novembre 2010 - 30 juil. 2009 à 14:44
A voir également:
- Récupérer variable (session) PHP
- Recuperer message whatsapp supprimé - Guide
- Recuperer video youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Impossible de récupérer mon compte gmail - Guide
- Récupérer mon compte facebook désactivé - Guide
9 réponses
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
29 juil. 2009 à 15:41
29 juil. 2009 à 15:41
dans la page d'enr dans la Base tu mets:
if(isset($_POST['envoyer'])) { session_start(); $pseudo=$_SESSION['login']; $titre = $_POST['titre']; $message = $_POST['message']; //et enr=mysql_query("INSERT INTO minichat(ID ,titre, message,pseudo) VALUES('','$titre','$message','$pseudo')
WOA Alain, quelle rapidité, à peine écrit déja une réponse, merci beaucoup de cette réponse d'ailleurs.
Je crois n'avoir jamais vu sa, message posté, message déja répondu.
Je vais tester cela.
Encore merci et bonne journée.
Je crois n'avoir jamais vu sa, message posté, message déja répondu.
Je vais tester cela.
Encore merci et bonne journée.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
29 juil. 2009 à 16:41
29 juil. 2009 à 16:41
si tu mets un echo:
if(isset($_POST['envoyer'])) { session_start(); $pseudo=$_SESSION['login']; echo "pseudo de session: ".$pseudo; tu as quoi qui s'affiche ?
Bonjour, désolé de n'avoir pu répondre avant.
Donc, encore une fois merci de votre aide, va débuter le 3ème jour que j'ai ce problème que je n'arrive pas à résoudre.
Donc j'ai fait comme vous m'avez demandé avec un echo.
Malheureusement, la variable n'a pas l'air d'être enregistrée car l'echo ne retourne rien:
Voici ce qui m'est affiché:
et rien derrière, donc la variable n'a plus l'air d'être encore sauvegardée dans la session.
Merci de votre aide, que j'attends avec impatience.
Bonne journée.
Donc, encore une fois merci de votre aide, va débuter le 3ème jour que j'ai ce problème que je n'arrive pas à résoudre.
Donc j'ai fait comme vous m'avez demandé avec un echo.
Malheureusement, la variable n'a pas l'air d'être enregistrée car l'echo ne retourne rien:
Voici ce qui m'est affiché:
pseudo de session:
et rien derrière, donc la variable n'a plus l'air d'être encore sauvegardée dans la session.
Merci de votre aide, que j'attends avec impatience.
Bonne journée.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
30 juil. 2009 à 09:41
30 juil. 2009 à 09:41
Bizarre, au moment de la connexion a l'espace membre, dans le script de connexion, si le client est bien identifié tu dois avoir:
session_start();
$_SESSION['login'] = $login;
il faudrait que tu nous donnes le code de cette partie
et est ce que comme tu dis plus haut echo '<p>Bonjour ',$_SESSION['login'],'</p>' affiche bien le pseudo
session_start();
$_SESSION['login'] = $login;
il faudrait que tu nous donnes le code de cette partie
et est ce que comme tu dis plus haut echo '<p>Bonjour ',$_SESSION['login'],'</p>' affiche bien le pseudo
Alors encore une fois merci de m'aider.
Je vient en effet, grâce à vos éclaircissements, comprendre quelque chose.
Je ne suis plus sur la page "membre.php", celle vers laquelle on est redirigé après connect.php et là où se trouve
donc, comme je ne suis plus sur cette page, la variable de la session ne doit plus être enregistrée (bizarre, je ne savais pas cela, je croyais qu'elle restait enregistrée tant que l'on ne fermait pas le navigateur, et pendant 1 heure par défaut), donc, en fait sur la page membre.php j'ai mis un lien qui fait: commentaires, et quand les membres cliquent dessus, ils sont redirigés vers une page html avec le formulaire (titre, message, envoyer), ils sont donc ensuite renvoyés vers la page 'com2.php' qui enregistre tout avec
Donc je ne comprend pas. Je pense que c'est pour cela que sa ne marche pas je suis à 3 pages de l'ouverture de la session 'connect.php' donc sans doute que la variable n'est plus enregistrée et a été effacée (? non ?).
Comme je l'ai dit, je suis encore novice, et ne connait le PHP que sous la forme théorique et moins pratique.
Je ne sais donc pas comment garder cette variable de page en page sans l'effacer ni la perdre, enfin, si c'est cela qu'il faut faire, mais j'aimerais éviter de demander à mes membres de se connecter à chaque page.
J'attends de nouveau votre aide, en espérant avoir était compréhensible dans mes affirmations.
Et merci encore.
Je vient en effet, grâce à vos éclaircissements, comprendre quelque chose.
Je ne suis plus sur la page "membre.php", celle vers laquelle on est redirigé après connect.php et là où se trouve
echo '<p>Bonjour ',$_SESSION['login'],'</p>';
donc, comme je ne suis plus sur cette page, la variable de la session ne doit plus être enregistrée (bizarre, je ne savais pas cela, je croyais qu'elle restait enregistrée tant que l'on ne fermait pas le navigateur, et pendant 1 heure par défaut), donc, en fait sur la page membre.php j'ai mis un lien qui fait: commentaires, et quand les membres cliquent dessus, ils sont redirigés vers une page html avec le formulaire (titre, message, envoyer), ils sont donc ensuite renvoyés vers la page 'com2.php' qui enregistre tout avec
$enr=mysql_query("INSERT INTO minichat(ID ,titre, message, pseudo) VALUES('','$titre','$message', '$pseudo')") or die ("Erreur requette ".mysql_error()); mysql_close();
Donc je ne comprend pas. Je pense que c'est pour cela que sa ne marche pas je suis à 3 pages de l'ouverture de la session 'connect.php' donc sans doute que la variable n'est plus enregistrée et a été effacée (? non ?).
Comme je l'ai dit, je suis encore novice, et ne connait le PHP que sous la forme théorique et moins pratique.
Je ne sais donc pas comment garder cette variable de page en page sans l'effacer ni la perdre, enfin, si c'est cela qu'il faut faire, mais j'aimerais éviter de demander à mes membres de se connecter à chaque page.
J'attends de nouveau votre aide, en espérant avoir était compréhensible dans mes affirmations.
Et merci encore.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
30 juil. 2009 à 13:53
30 juil. 2009 à 13:53
je croyais qu'elle restait enregistrée tant que l'on ne fermait pas le navigateur, et pendant 1 heure par défaut
être conservée
OUI tu as tout à fait raison, la variable de session devrait être conservée
si j'ai bien compris dans le script connect.php
si authetif ok tu as
session_start()
$SESSION['login']=$login;
et redirection vers page membre.php
dans membre.php
tu as
session_start()
echo "Bonjour ".$SESSION['login'];
si dans ta page com2.php tu as au début:
session_start()
echo "Variable session ".$SESSION['login'];
ça devrait marcher
mais attention session_start() doit être tout au début du script, juste après <?php
il ne DOIT pas y avoir d'autre balise avant genre <html etc...
donnes moi les codes de tes pages, en MP si tu veux
être conservée
OUI tu as tout à fait raison, la variable de session devrait être conservée
si j'ai bien compris dans le script connect.php
si authetif ok tu as
session_start()
$SESSION['login']=$login;
et redirection vers page membre.php
dans membre.php
tu as
session_start()
echo "Bonjour ".$SESSION['login'];
si dans ta page com2.php tu as au début:
session_start()
echo "Variable session ".$SESSION['login'];
ça devrait marcher
mais attention session_start() doit être tout au début du script, juste après <?php
il ne DOIT pas y avoir d'autre balise avant genre <html etc...
donnes moi les codes de tes pages, en MP si tu veux
JJBlow
Messages postés
44
Date d'inscription
jeudi 30 juillet 2009
Statut
Membre
Dernière intervention
6 novembre 2010
2
30 juil. 2009 à 14:44
30 juil. 2009 à 14:44
Merci beaucoup de ton aide.
Je t'envoie donc ça par MP.
Bonne journée.
Je t'envoie donc ça par MP.
Bonne journée.
Désolé mais votre technique ne fonctionne pas.
Le champs "pseudo" dans la base de données reste vide, rien ne s'y enregistre, donc sans doute que rien n'y ai envoyé et ce n'est peut être pas la bonne solution, non pas que je la mette en doute mais sa ne fonctionne pas.
Voilà ce que j'ai dans la page qui envoie:
(votre bout de code)
et
Mais rien ne s'enregistre dans la base de donnée, enfin, pas pseudo, mais le titre et le message si.
Auriez-vous une solution ? Je suis là-dessus depuis 2 jours maintenant sans trouver de solution.
(je rappel que je m'étais bien connecté avant l'envoie de message)
Le champs "pseudo" dans la base de données reste vide, rien ne s'y enregistre, donc sans doute que rien n'y ai envoyé et ce n'est peut être pas la bonne solution, non pas que je la mette en doute mais sa ne fonctionne pas.
Voilà ce que j'ai dans la page qui envoie:
if(isset($_POST['envoyer'])) { session_start(); $pseudo=$_SESSION['login']; $titre = $_POST['titre']; $message = $_POST['message'];
(votre bout de code)
et
$enr=mysql_query("INSERT INTO minichat(ID ,titre, message, pseudo) VALUES('','$titre','$message', '$pseudo')") or die ("Erreur requette ".mysql_error()); mysql_close();
Mais rien ne s'enregistre dans la base de donnée, enfin, pas pseudo, mais le titre et le message si.
Auriez-vous une solution ? Je suis là-dessus depuis 2 jours maintenant sans trouver de solution.
(je rappel que je m'étais bien connecté avant l'envoie de message)