0

嗨,我找到了一个教程来学习如何管理注册登录,他正在使用 Mysql,但我已经对 mysqli 进行了更改,将来我将更改为 PDO。但我也想学习其他东西,例如

http://gigaspartan.com/2010/11/26/how-to-build-a-full-featured-login-system/

在教程中,您每次登录时都会更新在线表格.. 像这样。

$time = date('U')+50;
mysql_query("UPDATE `admins` SET `online` = '".$time."' WHERE `id` = '".$_SESSION['uid']."'");

在我想显示实际登录用户的页面中,我有这个,但我显示所有用户.. 我的意思是一旦你登录,即使一周过去了,你似乎仍然在线 XD ja。

 <?php

   //select all rows where there online time is more than the current time
   $res = mysql_query("SELECT * FROM `admins` WHERE `online` > '".date('i')."'")or die(mysql_error()); ;

   if (mysql_num_rows($res)==0) { echo "0";}
   else {
   //loop for each row
     while($row = mysql_fetch_assoc($res)){
   //echo  each username found to be online with a dash to split them
    echo $row['username'].", ";
                            } 
                        }

                            ?>

也相关了解这个..

我为博客文章创建了另一个表,它使用 de same date() 函数来设置“发布日期”和“取消发布日期”,其想法是设置文章出现在博客上的开始日期和结束日期。

我的想法是使用查询来构建它,以检查今天 date() 是否在我的数据库中的预定日期范围之间,但我认为我必须首先更好地理解,例如为什么我的用户似乎总是在线。XD

4

1 回答 1

0

您的问题(列出了所有用户,甚至是离线用户)是因为您在 SQL 查询的一部分中使用date('i')了它应该出现的位置。date('U')online > date

参数 或date()可用并在此处进行说明。

于 2013-10-26T23:05:38.777 回答