Hi,
I use php 4.2.3 with session.auto_start = 1 in php.ini
What I use with URL session :
$_SESSION= array();
unset($_GET[session_name()]);
session_destroy();
Header("Location: next_script.php");
with cookie session :
$cook_param= session_get_cookie_params();
$life_time= $cook_param['lifetime'];
$path= $cook_param['path'];
setcookie(session_name(),"",$life_time,$path);
$_SESSION= array();
session_destroy();
mb
Jonathan Sharp wrote:
>
> Ok, here is my solution:
>
> I wanted this to be as self contained as possible:
>
> function clean()
> {
> /* get name of session & find session id */
> $name = ini_get('session.name');
> $sessid = ( !$_COOKIE[$name] ?
> ( !$_GET[$name] ?
> ( !$_POST[$name] ? false : $_POST[$name] ) :
> $_GET[$name] ) :
> $_COOKIE[$name] );
>
> /* run query now to see if sesion is expired, if yes */
> unset( $_COOKIE[$name] );
> unset( $_GET[$name] );
> unset( $_POST[$name] );
> unset( $_REQUEST[$name] );
> }
>
> clean();
> session_start();
>
> Since _COOKIE/etc needs to be UNSET before session_start is called and
> re-calling session_start does sqat, the above code (not all of it but
> general idea) 'finds' the session id (session_id() has no effect until
> session_start is called) and tests to see if it's expired, if so, it
> 'kills' all possible locations for session_start() to find an id.
>
> *simple*... (or something like that)
>
> -js
>
> Chris Shiflett wrote:
> > Yeah, John hinted at the answer there.
> >
> > You just need to make the session ID go away prior to starting the
> > session . Just unset it or set it to the empty string or whatever you
> > want to do.
> >
> > It is probably either $_COOKIE["PHPSESSID"] or $_GET["PHPSESSID"].
> >
> > Chris
> >
> > John W. Holmes wrote:
> >
> >>> "Simple" question. If a users session expires or has timed out, how do
> >>>
> >>> I 'force' php to generate a new sessionId?
> >>>
> >>
> >> Session_start() ??
> >>
> >> If there isn't a session id present, it'll create one.
> >>
> >> ---John Holmes...
> >>
> >
> >
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php