Salve, come da titolo ho una progress bar in php molto semplice, funzionante, che tuttavia si visualizza solo al termine del caricamento della pagina.
Ho un ciclo for con un tot numero di iterazioni e mi piacerebe che ad ogni iterazione, questa venisse visualizzata (come da codice) a schermo e con essa l'avanzamento della barra di progresso.
Questo è il codice:
Codice PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en">
<head>
<title>Progress Bar</title>
</head>
<body>
<!-- Progress bar holder -->
<div id="progress" style="width:500px;border:1px solid #ccc;"></div>
<!-- Progress information -->
<div id="information" style="width"></div>
<?php
$total = 100;
for($i=1; $i<=$total; $i++){
$percent = intval($i/$total * 100)."%";
echo '<script language="javascript">
document.getElementById("progress").innerHTML="<div style=\"width:'.$percent.';background-color:#ddd;\"> </div>";
document.getElementById("information").innerHTML="'.$i.' row(s) processed.";
</script>';
echo str_repeat(' ',1024*64);
flush();
sleep(1);
}
echo '<script language="javascript">document.getElementById("information").innerHTML="Process completed"</script>';
?>
</body>
</html>
il codice riguarda solo la barra di progresso, se poteste dirmi come risolvere il problema e come far si che venga visualizzata ogni iterazione ve ne sarei grato.
Spero possiate aiutarmi.