把下面的代码存为PHP文件(UTF8) 设置好地址 放在PHP空间里即可
JS代码来源于监控宝- <?php
- Header('Cache-Control: no-cache');
- $rurl=$_SERVER['SCRIPT_NAME'];//数据提交地址 默认为本文件
- $testurl='/test.jpg';//用于测试的图片
- //if(isset($_GET['ip'])){ $ip=$_GET['ip'];}
- /* else{$ip=$_SERVER['REMOTE_ADDR'];}
- include('misc.func.php');
- echo convertip($ip);*/
- if(!empty($_GET['loadtime'])){
- /*
- 测试完成后GET提交3个参数id,ref,loadtime
- ID可忽略 ref是来路 loadtime是加载时间ms
- 本代码没有数据记录功能 如需记录数据请自己增加写文件/MYSQL的部分
- 显示访问者所在地,ISP需相应数据库
- */
- //返回JSON数据到客户端
- $a=array('ip'=>$_SERVER['REMOTE_ADDR'],
- 'zone_name'=>'',
- 'isp_name'=>'',
- 'level'=>'',
- 'load_time'=>$_GET['loadtime']);
- $json=json_encode($a);
- echo "<script>parent.trace('".$json."');</script>";
- }else{
- header('Content-Type:text/html;charset=utf-8');//UTF8编码
- ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>访问速度测试</title>
- <style>
- body{background-color:#E8EEF7;font-family:Verdana;}
- .ask{font-size:14px;margin:3px 0;}
- .answer{font-size:12px;margin:0;margin-bottom:10px;color:#999;}
- .btn{background-color:#2B8C00;border:0;font-size:14px;color:#fff;font-weight:bold;padding:6px 12px;display:inline-block;-moz-border-radius:6px;border-radius:6px;-webkit-border-radius:6px; cursor:pointer;}
- </style>
- </head>
- <div style="display:none;" id="loader"></div>
- <div style="padding:20px;margin:10px auto;margin-top:50px;width:500px;background-color:#fff;border:1px solid #ccc;-moz-border-radius:6px;border-radius:6px;-webkit-border-radius:6px;">
- <p style="font-size:16px;font-weight:bold;">收集您到本站的访问时间</p>
- <div style="margin-top:30px;color:#333;">
- <p class="ask"></p>
- <p class="answer"></p>
- <p class="ask">需要安装软件吗?</p>
- <p class="answer">完全不需要,整个收集过程只需要持续几秒钟,不会在您的电脑中安装任何程序或文件。</p>
- </div>
- <div style="margin-top:30px;width:420px;height:18px;padding:1px;border:1px solid #949DAD;">
- <div style="width:0;height:18px;float:left;background-color:#D4E4FF;font-size:1px;" id="process"></div>
- </div>
- <div id="__tips" style="padding-top:5px;font-size:12px;">正在收集数据,请稍候。整个过程可能需要几秒钟时间……</div>
- <div id="__result" style="margin-top:20px;font-size:12px;line-height:15px;"></div>
- <div id="__close" style="margin-top:20px;height:30px;"></div>
- <div style="margin-top:50px;font-size:12px;color:#666;">
- 本页代码来自<a href="http://www.jiankongbao.com/" target="_blank"><span style="color:#333;">监控宝</span></a>
- </div>
- <script>
-
- var id = '1';
- var url = '<?php echo $testurl; ?>';
- var data = [];
- var max = 3;
- var proc = {0:25,1:50,2:75,3:100};
-
- loader(0);
- function loader(times)
- {
- if (times > max)
- {
- post();
- return;
- }
- var img_url = url + "?cc=" + Math.floor(100000*Math.random());
- var date = new Date();
- var start = date.getTime();
- var img = document.createElement("img");
- img.src = img_url;
- img.onload = function()
- {
- date = new Date();
- var end = date.getTime();
- var diff = end - start;
- data[times] = diff;
- document.getElementById('process').style.width = proc[times] + '%';
- loader(times + 1);
- };
- document.getElementById('loader').appendChild(img);
- }
- function post()
- {
- var d = [];
- var s = 0;
- var len = data.length;
- for (i = 0; i < len; ++i)
- {
- var o = 0;
- for (j = 0; j < len; ++j)
- {
- if (j != i)
- o += data[j];
- }
- if (data[i] != 0 && data[i] < o * 2)
- {
- d.push(data[i]);
- s += data[i];
- }
- }
- if (d.length == 0)
- {
- return
- }
- var lt = s / d.length;
-
- var img = document.createElement("iframe");
- img.src = '<?php echo $rurl; ?>?id=' + id + '&ref=' + encodeURIComponent(document.referrer) + '&loadtime=' + lt;
- document.getElementById('loader').appendChild(img);
-
- document.getElementById('__tips').innerHTML = '收集成功! 感谢您的参与。';
- document.getElementById('__close').innerHTML = '<input type="button" class="btn" value="关闭" onclick="window.close();" /> <input type="button" class="btn" value="重新测试" onclick="window.location.reload();" />';
- }
- function trace(json)
- {
- json = eval('(' + json + ')');
- if (!json.ip)
- return;
- document.getElementById('__result').innerHTML = 'IP地址: ' + json.ip + '<br />所在地: ' + json.zone_name + '<br />网络接入商: ' + json.isp_name + '<br />耗时: ' + json.load_time + '毫秒<br />速度评价: ' + json.level + '';
- }
- </script><?php
- }
- ?>
复制代码 |