Re: check if user session exists

From: Date: Mon, 09 Feb 2004 18:35:57 +0000
Subject: Re: check if user session exists
References: 1 2 3 4  Groups: php.general 
Request: Send a blank email to php-general+get-177240@lists.php.net to get a copy of this message
Yeah, my solution so far has been to check the last modified time of the session file and then go from there. If the modified time is > then time permitted, then that file is removed and the user's session is rendered null and void. What I am doing is allowing a variable X number of user's to simultaneously log-in under the same user/pass combo (account), and the problem I face is, if none of the user's logs-out, then how will I determine when to pop an inactive account off the stack. Good times.. thanks guys Christian "Rob Adams" <rob_adams@hotmail.com> wrote in message news:20040209231643.71313.qmail@pb1.pair.com... > "Christian Calloway" <callowaylc@yahoo.com> wrote in message > news:20040209202744.44416.qmail@pb1.pair.com... > > Yeah thats pretty much what I have concluded. I was absolutely sure there > > would be a way to check if a session was still active, but I guess not > :-(. > > Thanks though > > It depends on your definition of 'active.' If you wanted to see if the > specific session you are looking at has been used in the past half hour, > that is possible. Following is a script I've used to help debug sessions > sometimes. While it's not what you're asking for, it may help you figure > out how to do it. It may need tweaking to run on your server. > > <? // sessioninfo.php > $path = ini_get('session.save_path'); > if (isset($_GET['empty'])) > { > if (isset($_COOKIE['PHPSESSID'])) > setcookie('PHPSESSID', ''); > header('Location: sessioninfo.php'); > } > if (count($_GET) == 0) > { > echo "<br>Path: $path<br>"; > $dir = dir($path); > while ($file = $dir->read()) > { > $file_arr[$file]['time'] = filectime($path . '/' . $file); > $file_arr[$file]['size'] = filesize($path . '/' . $file); > } > $dir->close(); > asort($file_arr); > echo '<table > > border=1><tr><th>Time</th><th>Size</th><th>SessionID</th></tr>'; > foreach($file_arr as $fname => $data) > { > if ($fname == '.' || $fname == '..') > continue; > $ftime = date('Y-m-d G:i', $data['time']); > $sessid = substr($fname, 5); > echo > "<tr><td>$ftime</td><td>{$data['size']}</td><td><a > href=\"?sessionid=$sessid\">$fname</a></td></tr>"; > } > echo '</table>'; > } else if (isset($_GET['sessionid'])) { > setcookie('PHPSESSID', $_GET['sessionid']); > header('Location: sessioninfo.php?show=true'); > exit(); > } else { > session_start(); > echo '<pre>'; > print_r($_SESSION); > print_r($_GET); > echo '</pre>'; > } > ?> > > > > > > > Christian > > > > "Larry Brown" <larry.brown@dimensionnetworks.com> wrote in message > > > > news:CBECIONKKLMDDCIKHALJCEEIKDAA.larry.brown@dimensionnetworks.com... > > > I don't know of a function, but you could possibly read the directory > > where > > > the SID files are stored. I use sessions a lot; however, I've not tried > > to > > > accomplish this. I don't know if by default you can read the SID > > directory > > > from a script or if this is blocked for security reasons or not. If > not, > > > you could read the directory, match the SIDs from your list and go from > > > there. There is no way of knowing if the person is still actively using > > the > > > SID this way though. > > > > > > Larry. > > > > > > -----Original Message----- > > > From: Christian Calloway [mailto:callowaylc@yahoo.com] > > > Sent: Monday, February 09, 2004 9:28 AM > > > To: php-general@lists.php.net > > > Subject: [PHP] check if user session exists > > > > > > > > > Given a set of session id's, is it possible to query whether a given > > session > > > exists. I am not talking about the current user session, instead I am > > > referring to any and all possible user sessions currently in play. For > > > example: > > > > > > if (session_exists($sessionId)) doSomething(); > > > > > > I've been looking very hard for this one and haven't found an answer at > > all. > > > Any ideas? > > > > > > -- > > > PHP General Mailing List (http://www.php.net/) > > > To unsubscribe, visit: http://www.php.net/unsub.php

« previous php.general (#177240) next »