在PHP脚本上设置jQuery BlockUI

时间:2012-04-12 09:41:09

标签: php jquery html

我希望在我的PHP脚本在后台运行时显示内容并锁定屏幕。

该脚本可能需要很长时间才能运行,因为它会为元素列表提取元数据,因此根据在文本区域中输入的URL数量,最多可能需要5分钟。

我想使用BlockUI jQuery代码,但不知道如何在我的PHP脚本中设置它可以有人帮我吗?

这是我的代码:

<form method="get" action=<?php echo "'".$_SERVER['PHP_SELF']."'";?> >
<p>URL of Competitor:</p> 
<textarea name="siteurl" rows="10" cols="50">
<?php //Check if the form has already been submitted and if this is the case, display     the submitted content. If not, display 'http://'.
echo (isset($_GET['siteurl']))?htmlspecialchars($_GET['siteurl']):"http://";?>
</textarea><br>
<input type="submit" value="Submit">
</form>
<div id="nofloat"></div>
<table class="metadata" id="metatable_1">
<?php
ini_set( "display_errors", 0);
function parseUrl($url){
    //Trim whitespace of the url to ensure proper checking.
    $url = trim($url);
    //Check if a protocol is specified at the beginning of the url. If it's not,     prepend 'http://'.
    if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
            $url = "http://" . $url;
    }
    //Check if '/' is present at the end of the url. If not, append '/'.
    if (substr($url, -1)!=="/"){
            $url .= "/";
    }
    //Return the processed url.
    return $url;
}
//If the form was submitted
if(isset($_GET['siteurl'])){
    //Put every new line as a new entry in the array
    $urls = explode("\n",trim($_GET["siteurl"]));
    //Iterate through urls
    foreach ($urls as $url) {
            //Parse the url to add 'http://' at the beginning or '/' at the end if not    already there, to avoid errors with the get_meta_tags function
            $url = parseUrl($url);
            //Get the meta data for each url
            $tags = get_meta_tags($url);
            //Check to see if the description tag was present and adjust output   accordingly
            echo (isset($tags['description']))?"<tr><td>Description($url)</td>   <td>".$tags['description']:"<tr><td>Description($url)</td><td>No Meta Description</td>  </tr>.";
    }
}
?>
</table>
<script type="text/javascript">
        var exportTable1=new ExportHTMLTable('metatable_1');
    </script>
<div>
        <input type="button" onclick="exportTable1.exportToCSV()"   value="Export to CSV"/>
        <input type="button" onclick="exportTable1.exportToXML()"     value="Export to XML"/>
    </div>

以下是jQuery Block UI的链接:http://jquery.malsup.com/block/#demos

我还需要包含任何文件吗?

如果有人能指出我正确的方向,那就好了。)

非常感谢!

瑞奇

1 个答案:

答案 0 :(得分:0)

将php放在一个单独的文件中,然后使用ajax调用该脚本并在检索后将结果返回到页面?