找回密码
 注册帐号
查看: 4926|回复: 0

搜索引擎来路提醒小窗可广泛应用

[复制链接]

1400

主题

46

回帖

6880

积分

版主

发表于 2018-8-6 20:30:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册帐号

×
本帖最后由 鱼柒 于 2018-8-6 20:41 编辑

源码:
  1. <?php
  2. function get_referer($referers=''){
  3.         // 更改为自己的网址
  4.         // 避免来路重复
  5.         $localhost = 'https://sec.bducds.com';
  6.         /*获取网站来路*/
  7.         $referer = $referers ? $referers : $_SERVER['HTTP_REFERER'];
  8.         if(!$referer){
  9.                 return false;
  10.         }

  11.         /*获取网站host*/
  12.         $str = parse_url($referer);
  13.         if (!$str['host']||$str['host']==$localhost) {
  14.                 return false;
  15.         }
  16.         $url = $str['host'];

  17.         /*关键词判断类型*/
  18.         if(strpos($url,'baidu') !== false){
  19.                 $url_str = '百度搜索';
  20.         }elseif (strpos($url,'sogou') !== false) {
  21.                 $url_str = '搜狗搜索';
  22.         }elseif (strpos($url,'sm') !== false) {
  23.                 $url_str = '神马搜索';
  24.         }elseif (strpos($url,'bing') !== false) {
  25.                 $url_str = '必应搜索';
  26.         }elseif (strpos($url,'google') !== false) {
  27.                 $url_str = '谷歌搜索';
  28.         }elseif (strpos($url,'so') !== false) {
  29.                 $url_str = '360搜索';
  30.         }elseif (strpos($url,'easou') !== false) {
  31.                 $url_str = '宜搜搜索';
  32.         }elseif (strpos($url,'yahoo') !== false) {
  33.                 $url_str = '雅虎搜索';
  34.         }else{
  35.                 /*如果以上都找不到则使用来路域名并截取字数*/
  36.                 if (strlen($url)>5) $url_str=substr($url,0,10) . '...';
  37.         }
  38.         return $url_str;
  39. }
  40. ?>
  41. <script src="layui/layui.js"></script>//这里需要引入
  42. <link rel="stylesheet" type="text/css" href="layui/css/layui.css">//这个也需要引入
  43. <?php if(get_referer()){?>
  44. <script>
  45.         var popNotice = function() {
  46.                 //获取用户授权状态
  47.                 if (Notification.permission == "granted") {  
  48.                         var notification = new Notification("欢迎来自<?php echo get_referer();?>的朋友", {  
  49.                 //很明显这是正文
  50.                 body: '若当前文章未能解决您的问题,您可以先尝试站内搜索,当然也可以给我留言喔(^_^)!',
  51.                 //这是图标  
  52.                 icon: '<blockquote>//ws3.sinaimg.cn/large/005BYqpgly1fu080nvzr9j308c08cajy.jpg'
复制代码

  1.             });  
  2.             //消息被点击事件
  3.             notification.onclick = function() {  
  4.                     /*window.open("<?php echo $_SERVER['HTTP_REFERER'];?>");*/  
  5.             };  
  6.                         //消息被关闭事件
  7.                         notification.onclose  = function() {
  8.                                 notification.close();      
  9.                         };
  10.                         //消息出现错误事件
  11.                         notification.onerror  = function() {  
  12.                                 alert('上帝也不知道发生了什么');  
  13.                                 notification.close();      
  14.                         };
  15.                 }      
  16.         };  

  17.         if (window.Notification) {
  18.                 if (Notification.permission == "granted") {
  19.                         popNotice();  

  20.                 }else if( Notification.permission != "denied"){
  21.                         Notification.requestPermission(function (permission) {  
  22.                                 popNotice();  
  23.                         });  
  24.                 }  
  25.         } else {
  26.                 echo_layer();
  27.         }  
  28.         function echo_layer(){
  29.                 layui.define(['layer', 'form'], function(exports){
  30.                         var layer = layui.layer
  31.                         ,form = layui.form;

  32.                         layer.open({
  33.                                 title: '<i class="layui-icon layui-icon-face-smile" style="color: #1E9FFF;"></i> 欢迎来自<?php echo get_referer();?>的朋友'
  34.                                 ,content: '<i class="layui-icon layui-icon-group" style="color: green;"></i>若当前文章未能解决您的问题,您可以先尝试站内搜索,当然也可以给我留言喔(^_^)!'
  35.                                 ,offset: 'rb'
  36.                                 ,time:5000
  37.                                 ,anim:2
  38.                                 ,moveOut: true
  39.                                 ,maxmin: true
  40.                                 ,shade: 0
  41.                                 ,btn: ['确认', '关闭']
  42.                                 ,yes: function(index, layero){
  43.                                         /*window.open("<?php echo $_SERVER['HTTP_REFERER'];?>");*/  
  44.                                 }
  45.                                 ,btn2: function(index, layero){
  46.                                 }
  47.                                 ,cancel: function(){
  48.                                 }
  49.                         });

  50.                         exports('index', {});
  51.                 });   
  52.                
  53.         }
  54.         Notification.requestPermission().then(function(result) {
  55.                 if (result === 'denied') {
  56.                         echo_layer();
  57.                         console.log('许可不获批准。允许重试');
  58.                         return;
  59.                 }
  60.                 if (result === 'default') {
  61.                         echo_layer();
  62.                         console.log('许可请求被驳回。');
  63.                         return;
  64.                 }
  65.         });
  66. </script>
  67. <?php }?>
复制代码


中间用到的layui.js和layui.css打包好了 layui-v2.3.0.zip (580.16 KB, 下载次数: 0) 里面有好几个文件自己找一下emlog如何引入这个?看下面
1、先把<?php function get_referer($referers=''){.....}?>整段函数复制到module.php

2、然后去header.php引入layui.js和layui.css

3、之后再把<?php if(get_referer()){?>....<?php }?>整段代码放到footer.php即可

4、最后使用搜索引擎或者友情链接进行测试来路测试

游客,如果您要查看本帖隐藏内容请回复





哎...今天够累的,签到来了1...
您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

Archiver|sitemap|小黑屋|手机版原版|安全之家

GMT+8, 2025-4-4 19:09 , Processed in 0.107058 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表