1. #1
    Membre régulier Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2010
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : décembre 2010
    Messages : 182
    Points : 86
    Points
    86

    Par défaut Marche à suivre pour établir une barre de progression

    Bonjour à tous,

    J'ai un petit soucis pour comprendre la mise en place d'une barre de progression avec mes scripts php.

    Ce que je souhaite, c'est afficher une barre de progression sur le temps qu'une synchronisation (unidirectionnelle) de mes données s'établit entre 2 bases mysql.
    Le traitement php se résume à ceci:

    -compare les id entre les bases et insert ceux qui ne sont pas trouvés dans la table esclave.

    Mais comment faire pour afficher la progression de la barre alors que je ne voit pas ce que je peut donner de tangible en information de progression.

    Ce n'est pas comme si j'uploadais un fichier dont je peux calculer le poids de celui-ci.

    Donc si quelqu'un peut m'aider à y voir clair

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Architecte Web / Android
    Inscrit en
    août 2003
    Messages
    4 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte Web / Android
    Secteur : Industrie

    Informations forums :
    Inscription : août 2003
    Messages : 4 177
    Points : 10 561
    Points
    10 561

    Par défaut

    Si tu fais qu'une seule requête , c'est tout simplement pas possible.

    Si au contraire tu as une requête par id , c'est assez simple puisque tu sais le nombre d'id à comparer (count) et le nombre de requête déjà effectué.

    Ceci étant dit faire une barre de progression en php n'est pas aisé puisque un script ne retourne rien au navigateur tant qu'il n'est pas terminé. Il faut forcer la sortie via des fonctions comme flush() et ob_flush
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier Avatar de legrandse
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2010
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : décembre 2010
    Messages : 182
    Points : 86
    Points
    86

    Par défaut

    Merci pour ta réponse.

    Je vais jeter un coup d'oeil là-dessus très rapidement.

  4. #4
    Membre averti Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    septembre 2002
    Messages
    272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : septembre 2002
    Messages : 272
    Points : 446
    Points
    446

    Par défaut

    Si ça peut t'aider. Voici une technique pour envoyer les données au navigateur alors que le script php continue à s'exécuter.

    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
     
    <?php
    header( 'Content-type: text/html; charset=utf-8' );
    for( $i = 0 ; $i <= 10 ; $i++ )
    {
        //----- l'echo ci-dessous est important
    	echo '<!--'.str_repeat("x", 4096).'//-->'.PHP_EOL;
    	$longueur = 30 * $i;
    	echo "<div id='toto' style='position: fixed;top:10px;left:10px;height:20px;width:300px;border: 3px solid #73AD21;z-index:2;text-align:center'></div>".PHP_EOL; 	
    	echo "<div style='position: fixed;top:10px;left:10px;height:20px;width:${longueur}px;border: 3px solid #73AD21;background-color:#73AD21;z-index:1'></div>".PHP_EOL; 
    	echo "<script>document.getElementById('toto').innerHTML = (10 * $i)+'%';</script>";
        flush();
        ob_flush();
        sleep(1);
    }
    ?>

Discussions similaires

  1. Réponses: 3
    Dernier message: 12/01/2010, 11h26
  2. Thread pour une barre de progression
    Par BATCHOS CON TEQUILA dans le forum Windows Communication Foundation
    Réponses: 3
    Dernier message: 15/01/2009, 03h05
  3. marche a suivre pour la creation d'un progress bar
    Par azde7015 dans le forum Access
    Réponses: 1
    Dernier message: 19/02/2006, 12h06
  4. [C#]Affichage d'une barre de progression
    Par boleduch dans le forum ASP.NET
    Réponses: 9
    Dernier message: 27/08/2005, 18h12
  5. Indy FTP (idFTP) faire une barre de progress de transfert
    Par Harry dans le forum Web & réseau
    Réponses: 4
    Dernier message: 09/07/2004, 14h15

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