<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?
session_start();
function my_dl()
{
$name=$_SESSION['my_name'];
$lgtime=$_SESSION['lgtime'];
$ssion_id=$_SESSION['ssion_id'];$mysql_server_name="127.0.0.1";
$mysql_username="admin";
$mysql_password="123456";
$mysql_database="tk";
$cone=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
$sql="select * from login WHERE users="."'$name'";$result=mysql_db_query($mysql_database,$sql,$cone);
$row=mysql_fetch_row($result);
if ($name==$row[0] and $lgtime==$row[2] and $ssion_id==$row[1])
// return $name.$row[0].$lgtime.$row[2].$ssion_id.$row[1];
return 1;
else
return 0;
}
?><script language="JavaScript" type="text/javascript">
function my_time()
{
if (<? echo my_dl();?>==1)
alert(<? echo my_dl();?>);
else
{
alert("用户已在别处登录,系统将转到登录界面!");
location.href="login.php";
}
t=setTimeout("my_time()",5000)
}
</script><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.STYLE3 {font-size: 36px}
-->
</style>
</head>
<body onload="my_time()">
<? echo my_dl();?>;
<p class="STYLE3"> </p>
<p class="STYLE3"><a href ="grxx.php" target ="showframe">页面1</a></p>
<p class="STYLE3"><br>
<a href ="http://www.baidu.com" target ="showframe">页面2</a></p>
<p class="STYLE3"><br>
<a href ="http://www.sodu.org" target ="showframe">页面3</a></p>
</body>
</html>
基本思路如下,用户登录,将登录时间写进SESSION,并更改数据库,每5秒检查SESSION的数据是否数据一致,若第二个用户登录,则数据库中的数据更改,第一个用户的两个数据不一致,则转到登录界面。
出现的问题是:第二个用户登录后,my_dl()函数的返回值始终是1,若刷新页面,my_dl()的返回值才会变成0,请高手指教,问题出在哪?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?
session_start();
function my_dl()
{
$name=$_SESSION['my_name'];
$lgtime=$_SESSION['lgtime'];
$ssion_id=$_SESSION['ssion_id'];$mysql_server_name="127.0.0.1";
$mysql_username="admin";
$mysql_password="123456";
$mysql_database="tk";
$cone=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
$sql="select * from login WHERE users="."'$name'";$result=mysql_db_query($mysql_database,$sql,$cone);
$row=mysql_fetch_row($result);
if ($name==$row[0] and $lgtime==$row[2] and $ssion_id==$row[1])
// return $name.$row[0].$lgtime.$row[2].$ssion_id.$row[1];
return 1;
else
return 0;
}
?><script language="JavaScript" type="text/javascript">
function my_time()
{
if (<? echo my_dl();?>==1)
alert(<? echo my_dl();?>);
else
{
alert("用户已在别处登录,系统将转到登录界面!");
location.href="login.php";
}
t=setTimeout("my_time()",5000)
}
</script><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.STYLE3 {font-size: 36px}
-->
</style>
</head>
<body onload="my_time()">
<? echo my_dl();?>;
<p class="STYLE3"> </p>
<p class="STYLE3"><a href ="grxx.php" target ="showframe">页面1</a></p>
<p class="STYLE3"><br>
<a href ="http://www.baidu.com" target ="showframe">页面2</a></p>
<p class="STYLE3"><br>
<a href ="http://www.sodu.org" target ="showframe">页面3</a></p>
</body>
</html>
基本思路如下,用户登录,将登录时间写进SESSION,并更改数据库,每5秒检查SESSION的数据是否数据一致,若第二个用户登录,则数据库中的数据更改,第一个用户的两个数据不一致,则转到登录界面。
出现的问题是:第二个用户登录后,my_dl()函数的返回值始终是1,若刷新页面,my_dl()的返回值才会变成0,请高手指教,问题出在哪?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货