Problème variable de session
Fermé
flops21
Messages postés
4
Date d'inscription
vendredi 8 janvier 2021
Statut
Membre
Dernière intervention
8 janvier 2021
-
8 janv. 2021 à 15:15
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 8 janv. 2021 à 16:31
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 8 janv. 2021 à 16:31
A voir également:
- Problème variable de session
- Teamviewer code de session expiré ✓ - Forum Windows XP
- Vba range avec variable ✓ - Forum VB / VBA
- Ants session déconnectée - Forum Services en ligne
- Facebook session expirée ✓ - Forum Facebook
4 réponses
popozz
Messages postés
218
Date d'inscription
jeudi 5 mai 2016
Statut
Membre
Dernière intervention
22 mai 2021
176
8 janv. 2021 à 15:31
8 janv. 2021 à 15:31
Bonjour,
Alors pour commencer, je ne sais pas trop si ça se fait de mettre des espace des accents dans un lien, mais bon, peut-être.
Sinon c'est la première fois que je vois ça. Une redirection en PHP dans un lien. En sois, un lien est une redirection donc ça ne va pas. Ensuite il ne sert à rien de passer une variable session dans un lien puisqu'il suffirait de récupérer cette variable session depuis l'autre page.
Renseigne toi sur la fonction isset.
Alors pour commencer, je ne sais pas trop si ça se fait de mettre des espace des accents dans un lien, mais bon, peut-être.
Sinon c'est la première fois que je vois ça. Une redirection en PHP dans un lien. En sois, un lien est une redirection donc ça ne va pas. Ensuite il ne sert à rien de passer une variable session dans un lien puisqu'il suffirait de récupérer cette variable session depuis l'autre page.
Renseigne toi sur la fonction isset.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
Modifié le 8 janv. 2021 à 15:41
Modifié le 8 janv. 2021 à 15:41
Bonjour,
Ne pas utiliser la fonction header si tu as déjà affiché du code html ou php avant....
De plus, pour ce que tu souhaites faire... les simples liens html suffisent
Donc
Puis dans ton menu
Au passage... evite d'utiliser des noms de fichiers avec des accents et des espaces ( ou tout autre caractères spécial)...
Renomme ton fichier course à pied.php en course_a_pied.php ça t'évitera bien des soucis...
(et si le renomme, tu changes son nom également dans le menu bien entendu )
Et comme le dit Popozz
Quoi qu'il en soit, dans tes différentes pages, pour vérifier que l'utilisateur est bien connecté
Ne pas utiliser la fonction header si tu as déjà affiché du code html ou php avant....
De plus, pour ce que tu souhaites faire... les simples liens html suffisent
Donc
<?php //au debut du script de ta page session_start(); //récupération propre des variables AVANT de les utiliser $id_user = !empty($_SESSION['id']) ? $_SESSION['id'] : ""; ?>
Puis dans ton menu
<li><a href="velo.php?id=<?php echo $id_user; ?>">Velo</a></li> <li><a href="course à pied.php?id=<?php echo $id_user; ?>">Course à pied</a></li>
Au passage... evite d'utiliser des noms de fichiers avec des accents et des espaces ( ou tout autre caractères spécial)...
Renomme ton fichier course à pied.php en course_a_pied.php ça t'évitera bien des soucis...
(et si le renomme, tu changes son nom également dans le menu bien entendu )
Et comme le dit Popozz
Sinon c'est la première fois que je vois ça. Une redirection en PHP dans un lien. En sois, un lien est une redirection donc ça ne va pas. Ensuite il ne sert à rien de passer une variable session dans un lien puisqu'il suffirait de récupérer cette variable session depuis l'autre page.
Quoi qu'il en soit, dans tes différentes pages, pour vérifier que l'utilisateur est bien connecté
<?php //au debut du script de ta page session_start(); //récupération propre des variables AVANT de les utiliser $id_user = !empty($_SESSION['id']) ? $_SESSION['id'] : ""; //Si l'utilisateur n'est pas connecté if(!$id_user){ //retour à la page d'accueil de ton site par exemple header('location : index.php'); } ?>
flops21
Messages postés
4
Date d'inscription
vendredi 8 janvier 2021
Statut
Membre
Dernière intervention
8 janvier 2021
Modifié le 8 janv. 2021 à 15:49
Modifié le 8 janv. 2021 à 15:49
ok,
sur chacunes de mes page j'ai ecrit
mais je voudrais aussi que dans la barre d'adresse ce soit note
la ça n'est pas marqué.
sur chacunes de mes page j'ai ecrit
<?php
session_start();
if (isset($_SESSION['pseudo']))
{
?>
mais je voudrais aussi que dans la barre d'adresse ce soit note
velo.php?id=".$_SESSION['id'])
la ça n'est pas marqué.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
8 janv. 2021 à 15:45
8 janv. 2021 à 15:45
Avec le code que je t'ai donné... si...
flops21
Messages postés
4
Date d'inscription
vendredi 8 janvier 2021
Statut
Membre
Dernière intervention
8 janvier 2021
8 janv. 2021 à 15:46
8 janv. 2021 à 15:46
PS: pourtant ma variable de session existe bien car j'ai mon pseudo qui s'affiche.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
8 janv. 2021 à 15:46
8 janv. 2021 à 15:46
Au passage, merci de préciser le langage dans les balises de code afin d'avoir (comme pour ceux que je t'ai donné...) la coloration syntaxique.
Explications ( à lire ENTIEREMENT !! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Explications ( à lire ENTIEREMENT !! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
flops21
Messages postés
4
Date d'inscription
vendredi 8 janvier 2021
Statut
Membre
Dernière intervention
8 janvier 2021
8 janv. 2021 à 15:57
8 janv. 2021 à 15:57
C'est bon j'ai juste modifier
t'on
par
t'on
<?php echo $id_user; ?>
par
<?php echo $_SESSION['pseudo'] ?>
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
8 janv. 2021 à 16:31
8 janv. 2021 à 16:31
Ben.. tant qu'à le faire bien... et histoire que je ne t'ai pas donné du code commenté pour rien...
Il faut
Et donc tes echo deviennent
Il faut
//récupération propre des variables AVANT de les utiliser $pseudo= !empty($_SESSION['pseudo']) ? $_SESSION['pseudo'] : "";
Et donc tes echo deviennent
<?php echo $pseudo; ?>
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
>
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
8 janv. 2021 à 16:31
8 janv. 2021 à 16:31
Et un peu de lecture au passage histoire que tu écrives tes codes proprement
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code