Bonjour à tous
J'ai un script PHP qui effectue une requête SQL sur un SGBD Oracle, les résultats sont stockés dans une fichier ZIP et forcer au téléchargement de l'utilisateur jusque là tout va bien.
Ma requête SQL est dynamique en fonction d'un formulaire remplis par l'utilisateur auparavant , la durée de la requête SQL et donc du script ne peux donc pas être déterminé auparavant.
En moyenne le script met entre 20 et 30s , je voudrais donc avoir un div qui s'affiche de chargement durant la génération du zip, j'arrive donc à cacher tout le contenu de ma page et n'afficher que le contenu de mon div de chargement, cependant une fois le script fini et le fichier ZIP proposé à l'utilisateur je voudrais de nouveau cacher la div de chargement et afficher de nouveau mon formulaire comme à l'arrivé de l'utilisateur sur ma page.
J'ai essayé un Header(Location : ....) cependant pas possible si l'on propose un fichier au téléchargement, je me suis dit aussi un <body onload="cacherDivLoading()"> de ma page principale mais cela ne marche pas.
Pour l'instant voici où j'en suis :
Fonction qui affiche le div Loading , se declenche onSubmit de mon formulaire
1 2 3 4 5 6
| function afficheLoad() {
document.getElementById('corps').style.display="none";
document.getElementById('loading').style.display="block";
document.body.style.background = "#0d8aa5";
} |
mon Div Loading associé
<div id="loading" class="loading"></div>
J'ai essayé ceci mais ne se declenche pas une fois le script executé et ZIP télécharger
1 2 3 4 5 6 7
| <script type="text/javascript">
$(window).load(function(){
alert('test');
});
</script> |
Si quelqu'un à la moindre d'idée d'un événement en JS , PHP ou autre afin de cacher un div à la fin de mon script PHP je suis preneur.
Merci d'avance
Partager