0

这是需要等待的过程。它基本上是一个检查网站状态的片段。问题是如果我把它放在一个没有任何加载器的 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";
?>
4

1 回答 1

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");
      }   
    });
});

您可以通过其他方式传递 URL 的值

请注意,URL 值现在在$_GET['url'];

我希望这可以帮助:)

于 2013-05-16T11:10:35.913 回答