直接切入正题,使用PHP+HTML5开发论坛新帖实时提醒工具。 看看开发思路: 为了保证浏览器最小化也能收到消息提醒,需要用到HTML5的Notifications特性,推荐阅读: Notifications桌面提醒 http://www.1990c.com/?p=833 下面以监控admin5论坛任务区一个版块为例:

直接切入正题,使用PHP+HTML5开发论坛新帖实时提醒工具。
看看开发思路:

为了保证浏览器最小化也能收到消息提醒,需要用到HTML5的Notifications特性,推荐阅读:
notifications桌面提醒
http://www.1990c.com/?p=833
下面以监控admin5论坛任务区一个版块为例:
具有分类浏览商品或使用搜索工具查找商品,可按价格、商品分类、关键字搜索商品,可打印订单的详细信息以及电子邮件通知,保存购物车,查看购物车,清空购物车,查看已经提交的订单,会员注册、享受会员价格,会员登录,市场价,会员价和VIP会员价的比较,为朋友订购商品(送礼物的好办法哦), 完整的客户服务中心,新品上架展示区,推荐商品展示区,特价商品展示区,销售排行展示区,关注排行展示区阅读、发表商品评论信息并
0
<!DOCTYPE html>
<!--编码与目标站一致-->
新帖提醒工具
//请求桌面通知权限
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\" >(.*)<\/a>/',$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\" >(.*)<\/a>/',$str,$title); //抓取帖子标题
preg_match_all('/(.*)<\/span><\/em>/',$str,$time); //抓取发帖时间
foreach($title[1] as $k => $v) {
if(!in_array($v,$_SESSION['title'])) { //判断是否为新帖子
if(($now - strtotime($time[2][$k])) < 300) { //判断是否为5分钟内发表的新帖
?>
<!--消息提醒-->
notify("<?php echo $v;?>");
<?php
}
}
}
unset($_SESSION['title']); //清空SESSION标题数组
$_SESSION['title'] = $title[1]; //将新抓取的标题数组存入SESSION标题数组
echo "setTimeout('refresh()',$sleep)"; //刷新页面
}
?>
为了方便阅读,代码已经精简,各位可以根据实际需求修改,此外,使用Ajax也是一个不错的方法,欢迎交流。
原文地址:论坛新帖提醒工具, 感谢原作者分享。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号