Jump to content

session logout placement


searls03

Recommended Posts

ok so I need to know where to put this piece of code:

$userTime = time();
mysql_query("update `sessions` set  `activity` = '$userTime' where username='$username1'");
$inactivityTime = time() - 120; // 2 minutes
mysql_query("update `sessions` set `loggedin` = '0' where `activity` < '$inactivityTime' ");

inside of

<?php

/*

Copyright (c) 2009 Anant Garg (anantgarg.com | inscripts.com)

This script may be used for non-commercial purposes only. For any
commercial purposes, please contact the author at 
anant.garg@inscripts.com

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

*/

define ('DBPATH','mysql3.000webhost.com');
define ('DBUSER','a3605639_mem');
define ('DBPASS','Black1');
define ('DBNAME','a3605639_mem');

session_start();
$username1 = $_SESSION['username'];

global $dbh;
$dbh = mysql_connect(DBPATH,DBUSER,DBPASS);
mysql_selectdb(DBNAME,$dbh);

if ($_GET['action'] == "chatheartbeat") { chatHeartbeat(); } 
if ($_GET['action'] == "sendchat") { sendChat(); } 
if ($_GET['action'] == "closechat") { closeChat(); } 
if ($_GET['action'] == "startchatsession") { startChatSession(); } 

if (!isset($_SESSION['chatHistory'])) {
$_SESSION['chatHistory'] = array();	
}

if (!isset($_SESSION['openChatBoxes'])) {
$_SESSION['openChatBoxes'] = array();	
}

function chatHeartbeat() {

$sql = "select * from chat where (chat.to = '".mysql_real_escape_string($_SESSION['username'])."' AND recd = 0) order by id ASC";
$query = mysql_query($sql);
$items = '';

$chatBoxes = array();

while ($chat = mysql_fetch_array($query)) {

	if (!isset($_SESSION['openChatBoxes'][$chat['from']]) && isset($_SESSION['chatHistory'][$chat['from']])) {
		$items = $_SESSION['chatHistory'][$chat['from']];
	}

	$chat['message'] = sanitize($chat['message']);

	$items .= <<<EOD
				   {
		"s": "0",
		"f": "{$chat['from']}",
		"m": "{$chat['message']}"
   },
EOD;

if (!isset($_SESSION['chatHistory'][$chat['from']])) {
	$_SESSION['chatHistory'][$chat['from']] = '';
}

$_SESSION['chatHistory'][$chat['from']] .= <<<EOD
					   {
		"s": "0",
		"f": "{$chat['from']}",
		"m": "{$chat['message']}"
   },
EOD;

	unset($_SESSION['tsChatBoxes'][$chat['from']]);
	$_SESSION['openChatBoxes'][$chat['from']] = $chat['sent'];
}

if (!empty($_SESSION['openChatBoxes'])) {
foreach ($_SESSION['openChatBoxes'] as $chatbox => $time) {
	if (!isset($_SESSION['tsChatBoxes'][$chatbox])) {
		$now = time()-strtotime($time);
		$time = date('g:iA M dS', strtotime($time));

		$message = "Sent at $time";
		if ($now > 180) {
			$items .= <<<EOD
{
"s": "2",
"f": "$chatbox",
"m": "{$message}"
},
EOD;

if (!isset($_SESSION['chatHistory'][$chatbox])) {
	$_SESSION['chatHistory'][$chatbox] = '';
}

$_SESSION['chatHistory'][$chatbox] .= <<<EOD
	{
"s": "2",
"f": "$chatbox",
"m": "{$message}"
},
EOD;
		$_SESSION['tsChatBoxes'][$chatbox] = 1;
	}
	}
}
}

$sql = "update chat set recd = 1 where chat.to = '".mysql_real_escape_string($_SESSION['username'])."' and recd = 0";
$query = mysql_query($sql);

if ($items != '') {
	$items = substr($items, 0, -1);
}
header('Content-type: application/json');
?>
{
	"items": [
		<?php echo $items;?>
        ]
}

<?php
		exit(0);
}

function chatBoxSession($chatbox) {

$items = '';

if (isset($_SESSION['chatHistory'][$chatbox])) {
	$items = $_SESSION['chatHistory'][$chatbox];
}

return $items;
}

function startChatSession() {
$items = '';
if (!empty($_SESSION['openChatBoxes'])) {
	foreach ($_SESSION['openChatBoxes'] as $chatbox => $void) {
		$items .= chatBoxSession($chatbox);
	}
}


if ($items != '') {
	$items = substr($items, 0, -1);
}

header('Content-type: application/json');
?>
{
	"username": "<?php echo $_SESSION['username'];?>",
	"items": [
		<?php echo $items;?>
        ]
}

<?php


exit(0);
}

function sendChat() {
$from = $_SESSION['username'];
$to = $_POST['to'];
$message = $_POST['message'];

$_SESSION['openChatBoxes'][$_POST['to']] = date('Y-m-d H:i:s', time());

$messagesan = sanitize($message);

if (!isset($_SESSION['chatHistory'][$_POST['to']])) {

	$_SESSION['chatHistory'][$_POST['to']] = '';
}

$_SESSION['chatHistory'][$_POST['to']] .= <<<EOD
				   {
		"s": "1",
		"f": "{$to}",
		"m": "{$messagesan}"
   },
EOD;



unset($_SESSION['tsChatBoxes'][$_POST['to']]);

$sql = "insert into chat (chat.from,chat.to,message,sent) values ('".mysql_real_escape_string($from)."', '".mysql_real_escape_string($to)."','".mysql_real_escape_string($message)."',NOW())";
$query = mysql_query($sql);

echo "1";

exit(0);

}

function closeChat() {

unset($_SESSION['openChatBoxes'][$_POST['chatbox']]);

echo "1";
exit(0);
}

function sanitize($text) {
$text = htmlspecialchars($text, ENT_QUOTES);
$text = str_replace("\n\r","\n",$text);
$text = str_replace("\r\n","\n",$text);
$text = str_replace("\n","<br>",$text);
return $text;
}

 

 

I cant seem to figure this out to save my life!!!!!!!!

Link to comment
Share on other sites

what I want to have happen is when the message is sent to the database, it updates activity, so that the session logout time is updated basically.  I cant seem to figure out how to make it work.  I had tried placing it by where it would send to dbase, but that didn't work.  do you guys have any ideas?

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.