Session.gc_maxlifetime

Résolu
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 - 31 oct. 2008 à 16:55
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 - 1 nov. 2008 à 11:33
Bonjour,

Un p'tit souci avec la durée de vie de ma session:


// On détruit les sessions en cours


session_start();
session_unset();
session_destroy();



// demarre une nouvelle session



ini_set('session.gc_maxlifetime', 5);

session_start();

Donc si j'ai bien suivit ma mon coockie "PHPSESSID" ne devrait rester que 5 secondes dans le cache?

Ce qui n'est pas le cas, et quand je vais dans les détailles du coockie je peux lire ceci:

"Expire: à la fin de la session"

....

Az

5 réponses

davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
1 nov. 2008 à 11:33
trouvé!!

setcookie("PHPSESSID", session_id(), time()+$time_session, "/");
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
31 oct. 2008 à 20:10
Hello,

non, gc = garbage collector. A savoir le petit moteur qui va nettoyer les cookies serveur.
C'est différent du cookie client.
Le "cookie" serveur sera nettoyé par le garbage collector au bout de 5 secondes.
Mais pas le cookie client...à toi de modifier sa durée de vie aussi.
0
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
31 oct. 2008 à 20:33
Ha?!!? Et comment fait-on?

Merci

Az
0
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
1 nov. 2008 à 09:06
J'ai testé ça:

// On détruit les sessions en cours
session_start();
session_unset();
session_destroy();

// demarre une nouvelle session
setcookie("PHPSESSID",$_COOKIE["PHPSESSID"],5);
session_start();
// Connection au serveur mySQL
include('./config.php');

Ça marche toujours pas

Az
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
davidcian Messages postés 186 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 19 décembre 2009 1
1 nov. 2008 à 10:30
Bon y a du neuf...

<?php
session_start();
// Si la variable $login_session n'est pas déclaré
if(!isset($_SESSION["login_session"])) {
?>
<script language="javascript" type="text/javascript">
<!--
window.location.replace(
 "./index.php");
-->
</script>
<?php
       }
//sinon
 else {
// Connection au serveur mySQL
include('./config.php');

@mysql_connect($sql_serveur, $sql_login, $sql_password) or die("Connection interrompue");
@mysql_select_db($sql_base);

//Rècupre les info de l'utilisateur connécté
$user = $_SESSION["login_session"];

$profile_user = mysql_query("SELECT *
                  FROM membres
                  WHERE login = '$user'");
$result_profile_user = mysql_fetch_array($profile_user);

$groupe = $result_profile_user[3];
$langue = $result_profile_user[4];
$style = $result_profile_user[5];
$time_session = $result_profile_user[9];

setcookie("PHPSESSID",$_COOKIE["PHPSESSID"], time()+$time_session);
?>

Problème:

J'ai 2 cookies "PHPSESSID" qui ce créent le 1er expire bien 5s aprés mais le 2eme n'expire jamais...
je comprends d'où sort le 2eme cookie qui n'expire jamais...

Az
0
Rejoignez-nous