这是需要等待的过程。它基本上是一个检查网站状态的片段。问题是如果我把它放在没有任何加载器的php文件中,则需要一些时间来加载整个页面。
所以我认为我需要使用加载程序在后台运行此过程。
你是否知道如何将这个函数放在jQuery加载器中,以便它在后台运行,而页面的其余部分加载?
<?php
function Visit($url){
$agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";$ch=curl_init();
curl_setopt ($ch, CURLOPT_URL,$url );
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch,CURLOPT_VERBOSE,false);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch,CURLOPT_SSLVERSION,3);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST, FALSE);
$page=curl_exec($ch);
//echo curl_error($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if($httpcode>=200 && $httpcode<300) return true;
else return false;
}
$load = "http://www.somesite.com";
if (Visit($load))
echo "Site is UP";
else
echo "Site is DOWN";
?>
答案 0 :(得分:1)
您需要将此功能放在page
然后你需要指定结果div
然后你发出AJAX请求
让我们付诸行动
1 - 假设页面为myfunciton.php
而不是您需要调用函数
2 - <div class="loaderResult">Loading...</div>
3 - AJAX代码,我将使用jQuery
var url = "http://www.example.com/";
$(document).ready(function(){
$.ajax({
url: "myfunction.php?url="+url,
type: "post",
success: function(result){
alert("success");
$(".loaderResult").html(result);
},
error:function(){
alert("failure");
}
});
});
您可以通过其他方式传递网址的值
请注意,$_GET['url'];
我希望这可以帮助:)