Page de chargement dynamique

Résolu/Fermé
Nono_igo Messages postés 63 Date d'inscription mardi 3 janvier 2012 Statut Membre Dernière intervention 1 octobre 2016 - 28 juin 2012 à 20:20
Nono_igo Messages postés 63 Date d'inscription mardi 3 janvier 2012 Statut Membre Dernière intervention 1 octobre 2016 - 29 juin 2012 à 17:14
Bonjour,

Je sais, il y a pas mal de doc sur le sujet déjà, mais j'ai beau mettre en pratique ce qu'on peut trouver, je n'arrive toujours pas à avoir le résultat que je veux.
Je m'explique :

Sur une page (appelons-la page1), je permets aux utilisateurs d'uploader un fichier sur le serveur. Ensuite, ils valident à l'aide d'un formulaire l'utilisation des données qu'ils ont uploadé, ce qui a pour effet de diriger vers une page 2.

Sur cette page 2, je n'ai que le message/anim d'attente puis un document.location.href qui conduit à ma page 3 qui elle met du temps à être générée.

En effet, sur ma page 3, avec les données extraites du fichier uploadé, je fais un exec() PHP sur un programme. Cela peut prendre une dizaine de seconde à calculer les résultas. Puis, pour résumer, j'affiche ces résultats à la fin de cette page.


Donc a priori, vu que la page 2 ne se change en page 3 sur le navigateur de l'utilisateur que lorsque la page 3 a totalement été générée sur le serveur, ce que je mets sur ma page 2 est ce qui apparaît durant l'exécution de ma page 3. Ma page 2 est donc bien ma "page de chargement".
C'est le cas en pratique, pour le texte et qq détails de CSS, mais ça ne marche jamais pour des images et encore moins (et justement c'est surtout ce que je voudrais faire), pour des gifs animés...
J'ai déjà utilisé plusieurs techniques que j'ai trouvé sur des forums ou des tutos, mais à chaque fois, c'est la même chose hélas. Je ne comprends pas ce qui ne va pas.

Si quelqu'un a une idée, je suis preneur. Merci ! :)



A voir également:

1 réponse

aladin07 Messages postés 277 Date d'inscription vendredi 13 avril 2012 Statut Membre Dernière intervention 30 septembre 2012 30
28 juin 2012 à 20:39
Je crois que le document.location.href ne laisse pas le temps qu navigateur de charger les images, utilise jquery puis dans le scipt:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function(){
    // ton document.location.href
});
</script>
1
Nono_igo Messages postés 63 Date d'inscription mardi 3 janvier 2012 Statut Membre Dernière intervention 1 octobre 2016 3
29 juin 2012 à 17:14
Ça marche ! Un grand merci à toi aladin07 !

Effectivement, j'avais déjà abandonné l'idée du header() de PHP puisqu'il "doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichages PHP" mais je pensais que le document.location.href était nativement la solution.

En effet, puisque le code javaScript et le HTML est généré entièrement sur le serveur avant d'être envoyé sur le PC client, je me disais que tout fonctionnerait le temps que la page suivante soit généré. Mais il doit y avoir une sorte de "sécurité" qui fait que la page n'est pas entièrement générée dans ce cas. J'ai pas encore dû tout comprendre au fonctionnement du javasScript ! ^^

Bon, en tout cas, ça marche !
Merci encore.
0