Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在执行php exec()时显示javascript加载图标_Php_Javascript_Jquery - Fatal编程技术网

在执行php exec()时显示javascript加载图标

在执行php exec()时显示javascript加载图标,php,javascript,jquery,Php,Javascript,Jquery,我有一个PHP页面,它在加载时执行python脚本,一旦脚本被执行,就会显示页面的其余部分,即几个div的集合 <?php $str = exec('python -u read.py ' . $params, $output); $str; echo "welcome"; echo "<div id='div_1'>"; echo "<div id = 'div_2'>"; echo "you have finally landed, dude!";

我有一个PHP页面,它在加载时执行python脚本,一旦脚本被执行,就会显示页面的其余部分,即几个div的集合

<?php

$str = exec('python -u read.py ' . $params, $output);
$str;

echo "welcome";
echo "<div id='div_1'>";
  echo "<div id = 'div_2'>";
  echo "you have finally landed, dude!";
  echo "</div>";
echo "</div>";

?>

然后添加以下行

   echo "<div id='loading'>Loding......</div>";
echo“Loding……”;

我希望这将帮助你,一切顺利

echo”之前添加此行


$(文档).ready(函数(){
$(“#form1”).submit(函数(){//您可以将id分配给表单,并使用该id代替表单
$(“#img”).show();
$(“#img”).addClass(“iimg”);
$(“div#div_1”).hide();
返回true;
});
});
.iimg{
边缘顶部:150px;
高度:15px;
宽度:140px;
}

在第一次加载页面时,将此图像与html一起保留

<img id="img" src="loader.gif">
#id
更改为
#要放置….的元素的id

您不需要更改php脚本。您可以在php脚本中放置

echo  "error";
exit;
如果有错误

更好的方法是将底部的php更改为

echo "welcome
     <div id='div_1'>
           <div id = 'div_2'>
           you have finally landed, dude!
     </div>
    </div>";
exit;
echo“欢迎
你终于着陆了,伙计!
";
出口

您必须使用
.ajax()。加载没有相关内容的页面,然后对PHP脚本发出异步调用。这不是最优雅的,但可能是最简单的。显示微调器gif,然后执行python脚本并将其缓存或将结果存储在数据库中。然后使用meta标记重定向。如果缓存,页面将快速加载,因此如果从缓存中提取,则不需要微调器。用户还希望不必在每次加载页面时等待python脚本。否。在执行(…)
之前。
$(document).ready(function(){

    var url = "http://link_to_your_php_script";
    $.post(url, { /* You can have variable to post here */ }, function(data){
        if(data=="error"){
        alert("Error,page couldn't be loaded.");
        }
        else{
                  $("#id").html(data);
                }

        });
     $("#img").hide(); //Hide the loading image.

});
echo  "error";
exit;
echo "welcome
     <div id='div_1'>
           <div id = 'div_2'>
           you have finally landed, dude!
     </div>
    </div>";
exit;