论坛新帖提醒工具
直接切入正题,使用PHP+HTML5开发论坛新帖实时提醒工具。 看看开发思路: 为了保证浏览器最小化也能收到消息提醒,需要用到HTML5的Notifications特性,推荐阅读: Notifications桌面提醒 http://www.1990c.com/?p=833 下面以监控admin5论坛任务区一个版块为例:
直接切入正题,使用PHP+HTML5开发论坛新帖实时提醒工具。
看看开发思路:
为了保证浏览器最小化也能收到消息提醒,需要用到HTML5的Notifications特性,推荐阅读:
Notifications桌面提醒
http://www.1990c.com/?p=833
下面以监控admin5论坛任务区一个版块为例:
<!--编码与目标站一致--> 新帖提醒工具 //请求桌面通知权限 function init() { if (window.webkitNotifications) { window.webkitNotifications.requestPermission(); } } //消息提醒 function notify(str){ var icon = "logo.png"; //图标路径 var title = "新帖提醒("+ time + "秒后自动关闭)"; //消息标题 var body = str; //消息内容 var popup = window.webkitNotifications.createNotification(icon, title, body); popup.show(); //显示消息 } //刷新页面 function refresh() { document.location.reload(); } <?php $url = "http://bbs.admin5.com/forum-560-1.html"; //目标版块 $sleep = 5000; //监控频率(5秒) if(empty($_SESSION['title'])) { //首次抓取 $str = file_get_contents($url); preg_match_all('/onclick=\"atarget\(this\)\" class=\"xst\" >(.*)/',$str,$titleData); $_SESSION['title'] = $titleData[1]; //抓取帖子标题存入SESSION帖子数组 echo "setTimeout('refresh()',$sleep)"; //刷新页面 } else { //非首次抓取 date_default_timezone_set('PRC'); $now = mktime(); //计算当前时间 $str = file_get_contents($url); preg_match_all('/onclick=\"atarget\(this\)\" class=\"xst\" >(.*)/',$str,$title); //抓取帖子标题 preg_match_all('/(.*)/',$str,$time); //抓取发帖时间 foreach($title[1] as $k => $v) { if(!in_array($v,$_SESSION['title'])) { //判断是否为新帖子 if(($now - strtotime($time[2][$k])) <!--消息提醒--> notify("<?php echo $v;?>"); <?php } } } unset($_SESSION['title']); //清空SESSION标题数组 $_SESSION['title'] = $title[1]; //将新抓取的标题数组存入SESSION标题数组 echo "setTimeout('refresh()',$sleep)"; //刷新页面 } ?>
为了方便阅读,代码已经精简,各位可以根据实际需求修改,此外,使用Ajax也是一个不错的方法,欢迎交流。
原文地址:论坛新帖提醒工具, 感谢原作者分享。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

使用PHP的cURL库发送JSON数据在PHP开发中,经常需要与外部API进行交互,其中一种常见的方式是使用cURL库发送POST�...

在LAMP架构下整合Node.js或Python服务许多网站开发者都面临这样的问题:已有的LAMP(Linux Apache MySQL PHP)架构网站需要...

在macOS上将apscheduler定时任务配置为服务在macOS平台上,如果你想将apscheduler定时任务配置为一个服务,类似于ngin...

在LangChain中,如何替代已被禁用的initialize_agent函数?在LangChain库中,initialize_agent...

Python参数注解的另类用法在Python编程中,参数注解是一种非常有用的功能,可以帮助开发者更好地理解和使用函...

关于Linux系统自带Python解释器的删除问题许多Linux发行版在安装时会预装Python解释器,它并非通过软件包管理器�...

本文介绍如何在Debian系统上构建高可用性的MongoDB数据库。我们将探讨多种方法,确保数据安全和服务持续运行。关键策略:副本集(ReplicaSet):利用副本集实现数据冗余和自动故障转移。当主节点出现故障时,副本集会自动选举新的主节点,保证服务的持续可用性。数据备份与恢复:定期使用mongodump命令进行数据库备份,并制定有效的恢复策略,以应对数据丢失风险。监控与报警:部署监控工具(如Prometheus、Grafana)实时监控MongoDB的运行状态,并

本文介绍在Debian系统下监控PostgreSQL数据库的多种方法和工具,助您全面掌握数据库性能监控。一、利用PostgreSQL内置监控视图PostgreSQL自身提供多个视图用于监控数据库活动:pg_stat_activity:实时展现数据库活动,包括连接、查询和事务等信息。pg_stat_replication:监控复制状态,尤其适用于流复制集群。pg_stat_database:提供数据库统计信息,例如数据库大小、事务提交/回滚次数等关键指标。二、借助日志分析工具pgBadg
