Я работаю над своим первым приложением Laravel, которое на каком-то этапе просматривает большой объем данных, и я временно добавил примитивный индикатор выполнения, чтобы я мог понять, сколько времени потребуется, чтобы закончить ...
Он работает как положено на Win 8.1 XAMPP, но когда я перевожу его на Windows server 2016 (IIS + PHP 7.3.1 + MySQL 5.5), страница просто продолжает загружаться, а потом вдруг 100% ... или если весь процесс завершится неудачно, но это другая проблема.
Вот мой примитивный код:
создать индикатор выполнения html
echo'<div class="w3-container w3-display-middle" style="width:75%">
<p id="progress2text" style="visibility: hidden;">Pre-analyzing</p>
<div class="w3-border" id="progress2" style="height:24px; visibility: hidden;"></div><br>
<p>Analyzing - Do not close the page! You will be redirected when it is done...</p>
<div class="w3-border" id="progress3" style="height:24px;"></div>
;
отображение индикатора выполнения
echo '<script language="javascript">
document.getElementById("progress2text").style.visibility = "visible";
document.getElementById("progress2").style.visibility = "visible";
</script>';
обновление панели процесса в начале каждого цикла
while(){
//caluclating $percent here
echo '
<script language="javascript">
document.getElementById("progress2").innerHTML="<div class=\"w3-green w3-center\" style=\"height:24px;width:'.$percent.'%\">'.$percent.'%</div>";
</script>';
}
Спасибо.