gfpl
Messages postés172Date d'inscriptionsamedi 11 août 2012StatutMembreDernière intervention 9 avril 2011
-
8 avril 2011 à 19:14
gfpl
Messages postés172Date d'inscriptionsamedi 11 août 2012StatutMembreDernière intervention 9 avril 2011
-
9 avril 2011 à 22:00
Bon voila le souci je peut le tourner comme je veut mais je ne trouve pas la solution ....
j'essaie en vain mais non... la session marche avec chrome et FF mais pas sou ie et opera je doit rater qq chose mais je ne sait pas quoi...
en gros le probleme la réception de variable ok avec un printf meme sous ie ok
apres je redirige la page et la pouf perte de session plus rien dedans un simple formulaire de login pass qui redirige la j'ai commenter j'ai essayer pas mal de truc mais rien a faire
Le code la sans redirection de page m'affiche bien les variable de session
mais si on redirige comme ici -
page de redirection :
session_start();
session_name("languestruc" );
header("Cache-Control: no-cache, must-revalidate");
header("Expires: ".gmdate("D, d M Y H:i:s",time())." GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s",time()-30)." GMT");
include("fonctions_adm/lang.php" );
// protection de page ADMIN
include_once('./fonctions_adm/_protectpage.php');
// **************************************
// Parametres de CONFIGURATION de la NEWS
include_once('../fonctions/news_config.php');
// **************************************
// Parametres de Connexion a la BD
include_once('../fonctions/_connexion.php');
// **************************************
// Fonctions de traitement d image
include_once('../fonctions/fct_traitement_image.php');
// **************************************
include_once('../fonctions/fonction_admin.php');
code de la page ./fonctions_adm/_protectpage.php
session_start();
// ***************************************************************
// Protection des pages de la partie "administration"
// ***************************************************************
// si non identifie
if (isset($_SESSION['news_SESSION']))
{
// redirection vers le formulaire d identification
// header("Location: index.php");
exit();
}else{
//
//echo 'erreur de session';
header("Location: index.php");}
// ------------------------------
// si identifie, on continue ...
// ------------------------------
voila et donc quoi que je fasse je retourne sur index.php
vu que je perd mes variable de session des que je fais un header('Location sur ie et opera
j'ai essayer sur 3 pc différent avec ie mais le problème reste le même la je sèche
007Julien
Messages postés276Date d'inscriptionmercredi 22 septembre 2010StatutMembreDernière intervention 8 janvier 20144 9 avril 2011 à 12:52
Bien que ce ne soit pas très clair dans la documentation, la directive ini_set("session.use_trans_sid", 1); semble imposer la transmission des identifiants de session par les urls ...
Il conviendrait alors d'en tenir compte dans les redirections !
gfpl
Messages postés172Date d'inscriptionsamedi 11 août 2012StatutMembreDernière intervention 9 avril 2011 9 avril 2011 à 21:53
merci pour la réponse
sur la page 1 on récolte le login et le passe si ok on redirige vers une page
petit hic sur cette page on perd la session ...
et on retourne donc a la page login
si je fais un printf avant de rediriger si le login et pass sont bon les variables de sessions sont ok
mais de la je redirige et la perte de session
seulement sous IE et safari ?
page de verification de login :
<?php
ini_set("session.use_cookies", 0);
ini_set("session.use_trans_sid", 1);
session_start();
$lifetime=600;
setcookie(session_name(),session_id(),time()+$lifetime);
$user_=$_GET['login'];
$pass_=$_GET['password'];
$webiz=$_GET['webiz'];
$log=$_GET['log'];
include_once('../../_cfg_ini.php');
if ($user_ ==$AdminIdentifiant){
if($pass_ ==$AdminMotDePasse){
$host = $_SERVER['HTTP_HOST'];
//$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
session_name("languestruc" );
$_SESSION['news_SESSION'] = true;
$_SESSION['sadmin']="0";
if($webiz=='2'){
header("Location:http://$host/news/news_ADMIN/news_gallery.php");
exit();
//header ("Content-Length: 0");
}else
if($webiz=='3'){header("Location:http://$host$uri/news_menu.php");
header ("Content-Length: 0");
exit();}
else
if($webiz=='4'){header("Location:http://$host$uri/stats.php");
header ("Content-Length: 0");
exit();}
}
}
page de redirection quand le login est ok
?>
page lors que l'utilisateur est authentifier
<?php
session_start();
session_name("languestruc" );
header("Cache-Control: no-cache, must-revalidate");
header("Expires: ".gmdate("D, d M Y H:i:s",time())." GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s",time()-30)." GMT");
include("fonctions_adm/lang.php" );
// protection de page ADMIN
include_once('./fonctions_adm/_protectpage.php');
// **************************************
// Parametres de CONFIGURATION de la NEWS
include_once('../fonctions/news_config.php');
// **************************************
// Parametres de Connexion a la BD
include_once('../fonctions/_connexion.php');
// **************************************
// Fonctions de traitement d image
include_once('../fonctions/fct_traitement_image.php');
// **************************************
include_once('../fonctions/fonction_admin.php');
fonction qui verifie que l'utilisateur est toujour authentifier
<?php
session_start();
// ***************************************************************
// Protection des pages de la partie "administration"
// ***************************************************************
if (isset($_SESSION['news_SESSION'])){
}else{header("Location: index.php");
exit();}