IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] Pb barre de chargement


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Points : 102
    Points
    102
    Par défaut [PHP-JS] Pb barre de chargement
    Bjr à tous,

    j'ai un site développé en php sur le calcul il y a un gros tableau de calcul et cela peut prendre du temps (environ 20 secondes) et j'ai mis en place une barre de chargement en javascript au démarrage de la page.
    En loca ça marche parfaitement, néanmoins si je lance la page sur un serveur distant, IE charge la page avant de l'afficher et donc il n'affiche pas la barre de chargement pendant justement le chargement de la page.

    Si vous m'avez compris, avez-vous une solution?

  2. #2
    Membre éprouvé
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Points : 959
    Points
    959
    Par défaut
    Bonjour
    je ne suis pas certain de bien comprendre...
    **ie charge la page avant de l'afficher**

    Il execute ton code de calcul avant d'executer ton javascript? en occurence ta barre de chargement?

    ton code pour ta barre de chargement est appelé où et ca ressemble à quoi?

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Points : 102
    Points
    102
    Par défaut
    non non

    quand je lance la page, il y a un écran blanc, la page se charge et une fois chargé elle s'affiche d'un coup

    or j'aimerai qu'elle s'affiche petit à petit c'est à dire qu'elle affiche ma barre de chargement puis ensuite mon tableau.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    J'ai exactement le même problème.
    J'instancie des classes à l'ouverture d'une page, cela prend une dizaine de secondes mais l'utilisateur ne sait pas que la page charge. C'est pourquoi je souhaiterai afficher une page ou un javascript de chargement jusqu'à ce que la page soit affichée.

    J'ai testé la méthode avec le javascript malheureusement l'execution côté serveur se fait avant le côté application. Pourtant dans mon code c'est appelé avant.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    j'ai le même problème mais j'apporte un début de solution. Cette partie de code marche très bien sur mon navigateur Firefox, mais pas sur IE. Si quelqu'un peut m'aider ou alors m'indiquer une autre solution.

    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <html>
    <body>
    <div id="chargement" style= "display:block; text-align : center;">
    <img src="loading.gif">
    <br>
    Veuillez patienter pendant le traitement ...
    <? echo str_repeat('&nbsp;',256)."\n" ;?>
    </div>
     
    <?php
     
    echo '<script>';
    echo 'document.getElementById(\'chargement\').style.display = \'block\';';
    echo '</script>';
     
    //force l'affichage du bloc chargement
    ob_flush();
    flush();
    ob_flush();
    flush();
     
    // LONG TRAITEMENT PHP ( 10 à 30 secondes )
     
    echo '<script>';
    echo 'document.getElementById(\'chargement\').style.display = \'none\';'; 
    echo '</script>';
    ?>
    </body>
    </html>

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 59
    Points : 56
    Points
    56
    Par défaut
    Bonjour,

    alors un petit coup d'œil ici, http://fr2.php.net/flush

    et on peux voir :

    Certaines versions de Microsoft Internet Explorer ne commenceront l'affichage de la page qu'après avoir reçu 256 octets d'affichage. Cela vous obligera à envoyer des espaces supplémentaires pour afficher la page.
    Encore une fois, merci Microsoft de faire un navigateur bidon par rapport à la concurrence!

    Pour les caractères supplémentaires, il suffit de mettre un morceau de texte suffisamment grand en commentaire et le tour est joué!

Discussions similaires

  1. [PHP-JS] Barre de chargement pendant traitement PHP
    Par Floweract dans le forum Langage
    Réponses: 4
    Dernier message: 11/10/2006, 16h16
  2. [Upload] Barre de chargement pour envoi de fichier
    Par Caerbannog dans le forum Langage
    Réponses: 3
    Dernier message: 08/11/2005, 13h27
  3. recherche bidouille pour "barre de chargement"
    Par SpaceFrog dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 27/10/2005, 15h46
  4. [FLASH MX2004] Barre de chargement
    Par stanley dans le forum Flash
    Réponses: 1
    Dernier message: 17/10/2005, 09h35
  5. Réponses: 6
    Dernier message: 06/05/2005, 00h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo