Sessions
Fermé
parousky
Messages postés
325
Date d'inscription
mardi 11 septembre 2012
Statut
Membre
Dernière intervention
20 février 2022
-
Modifié par pijaku le 18/12/2013 à 09:33
enqueteactualite Messages postés 70 Date d'inscription mercredi 11 décembre 2013 Statut Membre Dernière intervention 16 mai 2015 - 18 déc. 2013 à 22:35
enqueteactualite Messages postés 70 Date d'inscription mercredi 11 décembre 2013 Statut Membre Dernière intervention 16 mai 2015 - 18 déc. 2013 à 22:35
A voir également:
- Sessions
- Nombre de sessions maximum atteint, merci de vous reconnecter plus tard ✓ - Forum Windows
- Ouvrir deux sessions windows en même temps ✓ - Forum Windows 8 / 8.1
- Opera sessions ✓ - Forum Réseaux sociaux
- Creer 2 sessions sur windows 10 - Forum Windows 10
- Free nombre de sessions maximum atteint - Astuces et Solutions
8 réponses
gardiendelanuit
Messages postés
1770
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
19 novembre 2016
264
Modifié par gardiendelanuit le 17/12/2013 à 16:43
Modifié par gardiendelanuit le 17/12/2013 à 16:43
Bonjour,
Commence par mettre
Merci de mettre "Résolu" quand le problème est réglé!
La connaissance c'est comme la confiture: moins on en a et plus on l'étale.
Commence par mettre
session_start();en première ligne de tous tes scripts.
Merci de mettre "Résolu" quand le problème est réglé!
La connaissance c'est comme la confiture: moins on en a et plus on l'étale.
parousky
Messages postés
325
Date d'inscription
mardi 11 septembre 2012
Statut
Membre
Dernière intervention
20 février 2022
6
17 déc. 2013 à 17:05
17 déc. 2013 à 17:05
Mais en ce qui concerne ces deux pages, j'ai bien mis session_start();. Mais dans la page 1, je dois aussi mettre session_start(); en première ligne ? Parce que je devrais démarrer la session uniquement si le pseudo et le mot de passe entré sont corrects, non ?
gardiendelanuit
Messages postés
1770
Date d'inscription
jeudi 20 décembre 2007
Statut
Membre
Dernière intervention
19 novembre 2016
264
17 déc. 2013 à 17:13
17 déc. 2013 à 17:13
Par convention, si l'on veut utiliser à un moment ou a un autre les sessions, il vaut mieux appeler session_start() à la première ligne de chaque script ou de modifier le php.ini pour qu'il le fasse automatiquement.
Ça évite des erreurs bêtes et surtout de s'y retrouver plus facilement.
Ça évite des erreurs bêtes et surtout de s'y retrouver plus facilement.
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
17 déc. 2013 à 17:16
17 déc. 2013 à 17:16
Salut,
Ta condition pour vérifier si l'utilisateur est connecté provoque une erreur si la session n'est pas créée :
-> Lire si la valeur de $_SESSION['pseudo'] est vrai et si la valeur $_SESSION['passe'] est vrai alors...
En effet si l'utilisateur ne s'est pas connecté, la variable $_SESSION['pseudo'] n'existe pas et toute utilisation de cette variable provoque une erreur indiquant que la variable n'existe pas : CQFD
Si tu veux tester l'existence de la variable $_SESSION['pseudo'], utilise l'instruction isset() ou empty() :
-> Lire si $_SESSION['pseudo'] existe et $_SESSION['passe'] existe alors...
Bonne journée
Ta condition pour vérifier si l'utilisateur est connecté provoque une erreur si la session n'est pas créée :
if($_SESSION['pseudo'] AND $_SESSION['passe'])
-> Lire si la valeur de $_SESSION['pseudo'] est vrai et si la valeur $_SESSION['passe'] est vrai alors...
En effet si l'utilisateur ne s'est pas connecté, la variable $_SESSION['pseudo'] n'existe pas et toute utilisation de cette variable provoque une erreur indiquant que la variable n'existe pas : CQFD
Si tu veux tester l'existence de la variable $_SESSION['pseudo'], utilise l'instruction isset() ou empty() :
if(isset($_SESSION['pseudo']) && isset($_SESSION['passe']))
-> Lire si $_SESSION['pseudo'] existe et $_SESSION['passe'] existe alors...
Bonne journée
enqueteactualite
Messages postés
70
Date d'inscription
mercredi 11 décembre 2013
Statut
Membre
Dernière intervention
16 mai 2015
16
18 déc. 2013 à 09:42
18 déc. 2013 à 09:42
Déjà en début de script à la première ligne tu dois vérifi si une session existe pas pour faire ton contrôle sur le formulaire :
et en page 2 tu dois vérifié aussi que la session existe :
si en page 2 ça fonctionne pas alors que ta session existé en page 1 alors essai d'enlever session_start en page 2
if ( !isset($_SESSION['pseudo']) && !isset($_SESSION['passe']) && !empty($_GET["pseudo"]) && !empty($_GET["passe"]) ) {
et en page 2 tu dois vérifié aussi que la session existe :
if(isset($_SESSION['pseudo']) AND isset($_SESSION['passe']))
si en page 2 ça fonctionne pas alors que ta session existé en page 1 alors essai d'enlever session_start en page 2
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
parousky
Messages postés
325
Date d'inscription
mardi 11 septembre 2012
Statut
Membre
Dernière intervention
20 février 2022
6
18 déc. 2013 à 12:26
18 déc. 2013 à 12:26
Je ne sais pas, je n'y arrive pas. J'ai tenté un code très simple, et ça ne marche pas :
<?php
session_start();
?>
<?php
if(isset($_SESSION['pseudo']) AND isset($_SESSION['passe']))
{
echo "Connecté";
}
else
{
echo "Pas connecté";
}
?>
Ceci est le code de la page 2. Et ça me met constamment "Pas connecté", alors que je me suis connecté sur la page 1...
<?php
session_start();
?>
<?php
if(isset($_SESSION['pseudo']) AND isset($_SESSION['passe']))
{
echo "Connecté";
}
else
{
echo "Pas connecté";
}
?>
Ceci est le code de la page 2. Et ça me met constamment "Pas connecté", alors que je me suis connecté sur la page 1...
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
18 déc. 2013 à 16:31
18 déc. 2013 à 16:31
Le problème vient peut être de la connexion du coup.
Commence par vérifier le bon fonctionnement de tes sessions avec un code encore plus simple :
pagetest1.php
pagetest2.php
Commence par vérifier le bon fonctionnement de tes sessions avec un code encore plus simple :
pagetest1.php
<?php session_start(); $_SESSION['pseudo'] = 'toto'; $_SESSION['passe'] = 'secret'; ?> <p>Session créée : </p> <pre> <?php var_dump($_SESSION); ?> </pre>
pagetest2.php
<?php session_start(); ?> <p>Session actuelle : </p> <pre> <?php var_dump($_SESSION); ?> </pre>
enqueteactualite
Messages postés
70
Date d'inscription
mercredi 11 décembre 2013
Statut
Membre
Dernière intervention
16 mai 2015
16
18 déc. 2013 à 17:50
18 déc. 2013 à 17:50
Hello,
j'ai vérifié ton code et je vois aucune erreur donc à mon sens tu as plutôt un problème de droit d'écriture en local dans le dossier tmp.
ferme ton programme, EasyPHP ? Wamp ? et ouvre le
en cliquant droit dessus puis en faisant : Exécuter en tant qu'Administrateur
Si ça marche toujours pas alors tu dois regarder dans php.ini la ligne "session.save_path" elle doit contenir le chemin du dossier tmp, si y'a rien tu peux mettre quelque chose comme : session.save_path = "c:/wamp/tmp" en aillant créer le dossier bien sur.
j'ai vérifié ton code et je vois aucune erreur donc à mon sens tu as plutôt un problème de droit d'écriture en local dans le dossier tmp.
ferme ton programme, EasyPHP ? Wamp ? et ouvre le
en cliquant droit dessus puis en faisant : Exécuter en tant qu'Administrateur
Si ça marche toujours pas alors tu dois regarder dans php.ini la ligne "session.save_path" elle doit contenir le chemin du dossier tmp, si y'a rien tu peux mettre quelque chose comme : session.save_path = "c:/wamp/tmp" en aillant créer le dossier bien sur.
parousky
Messages postés
325
Date d'inscription
mardi 11 septembre 2012
Statut
Membre
Dernière intervention
20 février 2022
6
18 déc. 2013 à 21:26
18 déc. 2013 à 21:26
Désolé, mais que veux-tu dire par tmp ? Est-ce qu'il doit avoir ce nom là ? Et je dois seulement créer un dossier vide qui s'appelle tmp dans WAMP ?
Et dans php.ini, il y a :
session.save_path = "N;/path"
et aussi :
session.save_path = "N;MODE;/path"
Alors lequel modifier, et est-ce que je dois le modifier ?
Et dans php.ini, il y a :
session.save_path = "N;/path"
et aussi :
session.save_path = "N;MODE;/path"
Alors lequel modifier, et est-ce que je dois le modifier ?
enqueteactualite
Messages postés
70
Date d'inscription
mercredi 11 décembre 2013
Statut
Membre
Dernière intervention
16 mai 2015
16
18 déc. 2013 à 21:29
18 déc. 2013 à 21:29
exécute ton wamp ou easyphp ou autre en mode admin comme je t'ai dis et dit nous si le problème persiste
parousky
Messages postés
325
Date d'inscription
mardi 11 septembre 2012
Statut
Membre
Dernière intervention
20 février 2022
6
18 déc. 2013 à 22:00
18 déc. 2013 à 22:00
Oui le problème est toujours là, et je lançais toujours WAMP en mode admin, donc ca ne change rien...
enqueteactualite
Messages postés
70
Date d'inscription
mercredi 11 décembre 2013
Statut
Membre
Dernière intervention
16 mai 2015
16
18 déc. 2013 à 22:35
18 déc. 2013 à 22:35
installe un autre serveur local si tu es motivé car à mon sens ton problème viens de la.
de toute façon ton code est bon.
de toute façon ton code est bon.