所以这里是Java脚本代码:
//Source: http://stackoverflow.com/questions/5529718/how-to-detect-internet-speed-in-javascript
var imageAddr = "http://www.kenrockwell.com/contax/images/g2/examples/31120037-5mb.jpg";
var downloadSize = 4995374; //bytes
window.onload = function() {
var oProgress = document.getElementById("progress");
oProgress.innerHTML = "Loading the image, please wait...";
window.setTimeout(MeasureConnectionSpeed, 1);
};
function MeasureConnectionSpeed() {
var oProgress = document.getElementById("progress");
var startTime, endTime;
var download = new Image();
download.onload = function() {
endTime = (new Date()).getTime();
showResults();
}
download.onerror = function (err, msg) {
oProgress.innerHTML = "Invalid image, or error downloading";
}
startTime = (new Date()).getTime();
var cacheBuster = "?nnn=" + startTime;
download.src = imageAddr + cacheBuster;
function showResults() {
var duration = (endTime - startTime)/1000;
var bitsLoaded = downloadSize * 8;
var speedBps = (bitsLoaded/duration).toFixed(2);
var speedKbps = (speedBps/1024).toFixed(2);
var speedMbps = (speedKbps/1024).toFixed(2);
oProgress.innerHTML = "Your connection speed is: <br />" +
speedBps + " bps<br />" +
speedKbps + " kbps<br />" +
speedMbps + " Mbps<br />";
}
}
我想,这将返回值(我会编辑代码,所以我只得到一个值),然后将其放置在一个PHP变量。问题是,当我使用后在网页上运行它:
$Speed = file_get_contents('wiFiCalc.js');
$value = trim(str_replace(array("document.write('", "');"), '', $Speed));
echo $value;
我刚刚得到的html页面的代码,如clami219如上所述。我只想返回该值来打印它并将其存储在数据库中。
另外,Jobst,你写的方式有点难以遵循。我在我的HTML代码中使用表单动作来提高速度,以便在返回到下一个HTML页面之前将其存储在数据库中,这样您可以解释代码的工作原理了吗?
谢谢,我将尽力加入这个。 – LeslieKnowsBest