RV2931
Messages postés184Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention16 juillet 2016
-
11 sept. 2006 à 23:28
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 2013
-
14 sept. 2006 à 21:17
bonjour,
j'ai essayé de gérer une session sur mon site en local avec easy php, hier ça marchait bien, et aujourd'hui, le passage de l'PHPSESSID semble mal fonctionner,
j'ai bien crée un dossier sessions dans ma racine, j'ai mis le chemin dans le fichier de config session.save_path, j'ai activé le session.use_trans_sid = 1, il se crée bien un fichier dans /sessions, lorsque je fais appel à session_start().
lorsque je fais $_SESSION['login'] =$login et ensuite echo $_SESSION['login'] dans la même page, c bon,
mais je fais ensuite un header('location:indexmembre.php');
et au début de indexmembre.php je fais appel au fichier de vérif :
<?php session_start();
if ( !isset($_SESSION['login']))
{
header('location:../identification/form_login.php') ;
}
?>
et là il me renvoie toujours sur ma page de form_login.php, alors qu'il ne devrait pas, et le fichier de session se crée bien...
RV2931
Messages postés184Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention16 juillet 2016 12 sept. 2006 à 17:53
ça marche toujours pas,
je comprend pas, quand je clique sur "identifier" de ma page principale, j'appelle le "indexmembre.php" :
indexmembre.php :
<?php include 'logue.php'?> renvoie directement à form_login puisque $_SESSION['login'] n'est pas enregistrée
...
logue.php :
<?php
session_start();
if ( !isset($_SESSION['login'])) c'est là le problème, il ne voit jamais que 'login' est enregistrée
{
header('location:../identification/form_login.php') ;
exit;
}
?>
form_login.php: formulaire d'identification qui envoie les infos en post à login.php
login.php :
<?php include ('conf.php'); // paramètres de connection SQL
$login= $_POST ['login'];
$password =$_POST['password'];
if($login= ='' || $password=='')
{
echo '<script language=javascript> alert ("Vous avez oublié de remplir un champ.");</script>';
include('form_login.php');
exit;
}
$sql = "SELECT password FROM membre WHERE login='$login'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);
if($data['password'] != $password)
{
echo'<script language=javascript> alert ("Mauvais login / password. Merci de recommencer");</script>';
include('form_login.php');
exit;
}
else
{
session_start();
$_SESSION ['login'] =$login;
/*
if(isset($_SESSION['login'])){
echo 'variable enregistrée '.$_SESSION['login']; quand j'enlève les commentaires, il me dit bien que $_SESSION['login'] est enregistrée
}
*/
header ('location:index.php');
}
?>
Je sais pas, je pense pas que ce soit normal, mais en fait, il me crée trop plein de fichiers de sessions dans mon répertoire sessions, à chaque fois que je rafraichis, ou que je tente d'aller sur une page qui fais appel à logue.php....
je ne trouve pas l'erreur, je comprend pas
sinon, comment je peux vérifier que le transfert d'id de session de php est activé, le truc est à 1 dans le fichier de conf, mais normalement, je devrais pas le voir dans les urls avec un GET ????
RV2931
Messages postés184Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention16 juillet 2016 12 sept. 2006 à 18:48
c'est p'tet normal mais faudrait qu'on m'explique,
quand j'accède en local à mon site : http://127.0.0.1/ les sessions ne fonctionnent pas
par contre quand je fais http://192.168.xx.xx/ les sessions fonctionnent, ça me dérange pas, mais ça m'oblige à être en réseau et ça c plutôt pas normal, non ???
si ququ'un sait d'ou ça vient, j'ai mis apache à écouter sur 127.0.0.1 et 192.168.xx.xx, je sais pas, c'est p'tet un problème de configuration de apache en fait ??
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 14 sept. 2006 à 09:48
Salut!
Es-tu sûr d'avoir les session_start sur TOUTES les pages? Je veux dire aussi que cela ne doit pas être conditionnel:
else
{
session_start();
>> Ca doit être en début de page, de manière incoditionnelle! :)
Bonne journée! :)
@++
R@f
www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Vous n’avez pas trouvé la réponse que vous recherchez ?
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 14 sept. 2006 à 21:17
Salut!
Ben, si tu en met pas sur contact et que tu passes sur contact, ca te perdra ta session et tu devras te reloger... Donc, oui! :)
@++
R@f
www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"