php - Codeigniter - 1 分钟后删除一条记录

标签 php mysql codeigniter

我正在尝试让一个函数运行,以便在消息发布到数据库后,比如说 1 分钟后,它会删除该行。

我的数据库是这样的:

       CREATE TABLE `messages` (
       `id` int(11) NOT NULL AUTO_INCREMENT,
       `user_id` int(35) NOT NULL,
       `account_number` int(25) NOT NULL,
       `message_content` text NOT NULL,
      `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
      `status` enum('1','0') NOT NULL,
       `txt` varchar(20) NOT NULL DEFAULT 'Unread',
        PRIMARY KEY (`id`)
         ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 COMMENT='Table for storing notifications/messages' AUTO_INCREMENT=27 ;

我当前的代码如下:

            $sql = "DELETE FROM messages WHERE created < DATE_SUB( NOW( ) , INTERVAL 2 MINUTE )";
    $this->db->query($sql);

基本上就像我在 1/2 分钟后所说的那样,这需要通过它获取的 ID 从数据库中删除消息,如何实现这一点,因为我上面显示的代码不起作用。我正在使用 ActiveRecord,它可以帮助任何人帮助我。

提前致谢。

最佳答案

如果您只想按 ID 删除一条消息,更好的策略是使用定期作业(如 cron)定期删除记录,或者使用除 Web 服务器之外的其他进程执行删除操作。然后您可以标记要删除的记录,或将 ID 传递给该进程。

这有帮助吗?

关于php - Codeigniter - 1 分钟后删除一条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18059891/

相关文章:

php - max_questions - 保持分数 [mysql/php]

MySQL 表中的 PHP PDO 计数和总和值

适用于 Windows 7 64 位操作系统的 MYSQL 安装程序?

php - 如何使用 php 或 codeigniter 生成动态 css 文件

php - Codeigniter 网站上的 Google Analytics API

php - Codeigniter 将多个文件上传到数据库的不同路径

PHP强制文件下载

php - paypal api dodirectpayment nvp php 没有响应

Mysql:Order By 返回错误

来自 HTML 页面的 PHP post 请求显示空白输入字段