ID:               48063
 User updated by:  myselfasunder at gmail dot com
 Reported By:      myselfasunder at gmail dot com
 Status:           Bogus
 Bug Type:         Session related
 Operating System: Ubuntu
 PHP Version:      5.2.9
 New Comment:

I've removed the session name setting and the cookie-parameters call:

ini_set('session.use_only_cookies', '1');
ini_set('session.gc_maxlifetime', 86400 * 3);

session_start();

if(isset($_SESSION['aa']))
        print("Session already exists.<br>");

else
        print("Session DOES NOT exist.<br>");

$_SESSION['aa'] = true;


However, even though the cookie lifetime is 0, the session still
disappears. Thoughts/suggestions?

Is this most likely a me-problem, or the extension?


Previous Comments:
------------------------------------------------------------------------

[2009-04-24 00:05:29] myselfasunder at gmail dot com

This is just a project, at work, that I've been working on, and this is
just all from the perspective of my local system... so, it's very
unlikely that any other sessionized web-apps are running without me
being able to think of them.

I don't exactly know the format of the session file, but since it deals
with serialized information and a predictable data-size, you can
presumably put the lifetime information at the end of the file without
interfering with backward compatibility..?

------------------------------------------------------------------------

[2009-04-23 21:59:15] scott...@php.net

It's not that smart, it just looks through the session directory and
kills anything that looks like a session file based on the last time the
file was read and the currently lifetime value.

If there are zero other scripts on the system then it should be fine,
but I suspect there is one somewhere you are missing. Can you add this
to the php.ini file and see if you can reproduce it?

We could look to adding the session lifetime to the file but that would
break backwards compatibility and you could accidentally set a session
to 10 years from now and it would never get removed.

------------------------------------------------------------------------

[2009-04-23 21:24:24] myselfasunder at gmail dot com

Even if this is the only script that executes on the system (a
front-controller in the only application)?

How about the fact that my session-name is 'COOKIE' in this
test-script... Wouldn't only everything that uses a session-name of
COOKIE interfere with each other, in this case?

------------------------------------------------------------------------

[2009-04-23 21:02:23] scott...@php.net

You need to set it in the php.ini, if any other script uses sessions
and doesn't set it to be the same value it will delete the sessions.

------------------------------------------------------------------------

[2009-04-23 19:06:20] myselfasunder at gmail dot com

<?php

session_name('COOKIE');
session_set_cookie_params(86400 * 3);
ini_set('session.use_only_cookies', '1');
ini_set('session.gc_maxlifetime', 86400 * 3);

session_start();

if(isset($_SESSION['aa']))
        print("Session already exists.<br>");

else
        print("Session DOES NOT exist.<br>");

$_SESSION['aa'] = true;

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/48063

-- 
Edit this bug report at http://bugs.php.net/?id=48063&edit=1

Reply via email to