从最后一分钟开始活动(PHP)

汤米

我遇到了一些问题,当我尝试使用lastactivity时间(-1分钟)来获取用户时,我根本没有任何结果。

这是我的代码:

  if (isset($_POST['message'])) {
    if (!empty($_POST['msg'])) {
      $chatArray = array();
      $s = $_database->query("INSERT INTO chat(`username`, `text`, `date`) VALUES('".$_database->real_escape_string($_POST['username'])."', '".$_database->real_escape_string($_POST['msg'])."', '".TIME()."')");
      $newID = $_database->insert_id;
      $_database->query("UPDATE chatusers SET lastactivity=TIME() WHERE username='".$_POST['username']."'");
      $timestamp = (isset($_COOKIE['chatTimestamp'])) ? $_COOKIE['chatTimestamp'] : TIME();

      $q = $_database->query("SELECT * FROM (SELECT * FROM chat WHERE `date` > ".$timestamp." ORDER BY date DESC LIMIT 0, 24) AS a ORDER BY DATE ASC");
      if ($q->num_rows == 0) { echo '0'; }
      else {
        while ($rad = $q->fetch_array()) {
          // $chatArray["message"][] = array("msgID" => $rad['msgID'], "message" => $rad['text'], "timestamp" => $rad['date'], "date" => date('H:i', $rad['date']), "username" => $rad['username']);

        }
        $query = $_database->query("SELECT * FROM chatusers WHERE `lastactivity` > (NOW() - INTERVAL 1 minute)");
        var_dump($query);
        while ($row = $query->fetch_array()) {
          $chatArray["users"][] = array("username" => $row['name'], "lastactivity" => $row['lastactivity']);
        }
        print_r($chatArray);
      }
    }
  }

如您所见,如果我将选择行更改为"SELECT * FROM chatusers WHERE lastactivity < (NOW() - 1 minute)"获取数据库中的所有用户,则我会在尝试获取结果之前更新lastactivity,并且仍然会得到num_rows 0

我在这里想念什么?

lix药

PHP time(),MySQLTIME()和MySQLNOW()不同。另外,系统时间和MySQL服务器时间可以在不同的时区。

PHP的time()返回时间戳(整数)。

MySQL的TIME()返回时间,如中所示12:34:31

MySQL会NOW()传回日期和时间字串,如所示2015-11-19 12:34:31

使固定:

  • 如果您使用的是datetime列,使用SQLNOW()在所有三个声明(INSERTUPDATE,和SELECT)。
  • 如果使用的是timestamp列,则TIME()在所有三个中都使用SQL

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

每分钟一分钟的通话功能

来自分类Dev

DateTime.TryParseExact增加一分钟?

来自分类Dev

Grafana在最后一分钟错误地渲染了数据

来自分类Dev

给字符串加一分钟

来自分类Dev

验证是否在最后一分钟内创建了最后一条记录

来自分类Dev

使用H / 1每隔一分钟运行一次Jenkins作业

来自分类Dev

每隔一分钟通过Node.js发出一个请求

来自分类Dev

优化:如何从一周的每一分钟的时间获取TimeId?

来自分类Dev

Highcharts tickinterval设置为一分钟仅显示一个日期

来自分类Dev

Java的挂起一分钟后,一个程序完成

来自分类Dev

在ansible中找到在最后一分钟内修改过的最新文件?

来自分类Dev

从最后一分钟开始显示可变数字的功能

来自分类Dev

Python:下一分钟开始时执行代码

来自分类Dev

什么是将程序运行一分钟然后暂停一分钟的最简单方法

来自分类Dev

Laravel Carbon加号或分钟一分钟用于比较时间

来自分类Dev

我如何每隔一分钟在php中执行代码?

来自分类Dev

从列表中获取最后一分钟的日期行

来自分类Dev

以一分钟为增量选择分钟平均

来自分类Dev

bash一分钟到5分钟

来自分类Dev

最后一分钟来自每个表的数据

来自分类Dev

检查post_date是否在一分钟前PHP

来自分类Dev

DateTime.TryParseExact增加一分钟?

来自分类Dev

PHP日期到字符串的转换将为每个结果增加一分钟

来自分类Dev

一分钟。字典中的值

来自分类Dev

验证是否在最后一分钟内创建了最后一条记录

来自分类Dev

一分钟后无法上网

来自分类Dev

运行Cron不到一分钟-Laravel

来自分类Dev

WordPress网站加载将近一分钟

来自分类Dev

Ubuntu 需要一分钟才能启动

Related 相关文章

热门标签

归档