论坛新帖提醒工具
直接切入正题,使用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也是一个不错的方法,欢迎交流。
原文地址:论坛新帖提醒工具, 感谢原作者分享。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Menghantar data JSON menggunakan perpustakaan Curl PHP dalam pembangunan PHP, sering kali perlu berinteraksi dengan API luaran. Salah satu cara biasa ialah menggunakan perpustakaan curl untuk menghantar post ...

Ramai pemaju laman web menghadapi masalah mengintegrasikan perkhidmatan node.js atau python di bawah seni bina lampu: lampu sedia ada (Linux Apache MySQL PHP) Laman web seni bina memerlukan ...

Konfigurasikan tugas masa Apscheduler sebagai perkhidmatan di platform macOS, jika anda ingin mengkonfigurasi tugas masa Apscheduler sebagai perkhidmatan, sama dengan Ngin ...

Bagaimana cara menggantikan fungsi initialize_agent yang dilumpuhkan di langchain? Di Perpustakaan Langchain, Initialize_agent ...

Penggunaan alternatif anotasi parameter python Dalam pengaturcaraan Python, anotasi parameter adalah fungsi yang sangat berguna yang dapat membantu pemaju memahami dan menggunakan fungsi ...

Mengenai masalah menghapuskan penterjemah python yang dilengkapi dengan sistem Linux, banyak pengagihan Linux akan memasang semula penterjemah python apabila dipasang, dan ia tidak menggunakan pengurus pakej ...

Artikel ini menerangkan cara membina pangkalan data MongoDB yang sangat tersedia pada sistem Debian. Kami akan meneroka pelbagai cara untuk memastikan keselamatan data dan perkhidmatan terus beroperasi. Strategi Utama: Replicaset: Replicaset: Gunakan replika untuk mencapai redundansi data dan failover automatik. Apabila nod induk gagal, set replika secara automatik akan memilih nod induk baru untuk memastikan ketersediaan perkhidmatan yang berterusan. Sandaran dan Pemulihan Data: Secara kerap Gunakan perintah Mongodump untuk membuat sandaran pangkalan data dan merumuskan strategi pemulihan yang berkesan untuk menangani risiko kehilangan data. Pemantauan dan penggera: Menyebarkan alat pemantauan (seperti Prometheus, Grafana) untuk memantau status MongoDB dalam masa nyata, dan

Artikel ini memperkenalkan pelbagai kaedah dan alat untuk memantau pangkalan data PostgreSQL di bawah sistem Debian, membantu anda memahami pemantauan prestasi pangkalan data sepenuhnya. 1. Gunakan PostgreSQL untuk membina pemantauan PostgreSQL sendiri menyediakan pelbagai pandangan untuk pemantauan aktiviti pangkalan data: PG_STAT_ACTIVITY: Memaparkan aktiviti pangkalan data dalam masa nyata, termasuk sambungan, pertanyaan, urus niaga dan maklumat lain. PG_STAT_REPLITI: Memantau status replikasi, terutamanya sesuai untuk kluster replikasi aliran. PG_STAT_DATABASE: Menyediakan statistik pangkalan data, seperti saiz pangkalan data, masa komitmen/masa rollback transaksi dan petunjuk utama lain. 2. Gunakan alat analisis log pgbadg
