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 :

Affichage progressif du contenu d'une page


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut Affichage progressif du contenu d'une page
    Bonjour,

    j'ai une page PHP qui va créer des thumbnails pour toutes les images présentes dans un répertoire. Le traitement fonctionne très bien mais dure pas mal de temps. Est-il possible d'afficher par exemple les photos déjà traitées afin que l'utilisateur n'ait pas une page vide jusqu'à la fin du traitement. j'aimerai par exemple afficher une log comme ci-dessous :

    photo img1 traitée (1/250)
    photo img2 traitée (2/250)
    ....

    merci!

  2. #2
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    ce n'est pas ça qu'on fait en général... c'est très lourd pour le serveur (et très lourd pour l'utilisateur qui doit attendre.... longtemps...)

    Deux solutions :
    1] Créer directement les miniatures quand on upload l'image (bon si l'upload est fait par FTP forcément c'est pas possible de faire une automatisation)
    2] Le script qui crée les miniatures devrait se trouver quelque part dans une administration et lancé uniquement par un utilisateur "averti" et non pas un lambda qui se ballade sur le site.... De plus, il faut forcément sauvegarder ces miniatures pour ne pas les créer à chaque fois

  3. #3
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    3 030
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 030
    Par défaut
    Sinon, va voir du coté du CSS.
    Il y a un tuto sur comment ajouter une icône de chargement pour les grandes images.

    http://css.developpez.com/tutoriels/...t-pour-images/

    De cette manière tu auras quelques chose à afficher en attendant.

  4. #4
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    Citation Envoyé par popo Voir le message
    Sinon, va voir du coté du CSS.
    Il y a un tuto sur comment ajouter une icône de chargement pour les grandes images.

    http://css.developpez.com/tutoriels/...t-pour-images/

    De cette manière tu auras quelques chose à afficher en attendant.
    Sauf que dans son cas, ce n'est pas un problème de chargement d'images... la page PHP créée les miniatures... tant que tout le traitement PHP ne sera pas terminer, RIEN ne sera afficher, pas même la CSS chargée !

    la preuve :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    for ($i = 0; $i < 999999; $i++) {
    	;
    }
    ?>
     
    kikoooooooooo
    donc vala, tout ça pour dire que ça sert à rien d'aller voir du coté du CSS dans ce cas-ci :p

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut
    En fait je crois que j'ai mal formulé ma question, le problème n'est pas la création des thumbnails. Mon problème est juste un problème d'affichage progressif du code HTML généré.

    Lorsque j'appuie sur le bouton submit de mon formulaire, la page du formulaire reste affichée jusqu'à la fin du traitement. Ce n'est qu'en fin de traitement que toutes les lignes "photo img1 traitée (1/250), photo img2 traitée (2/250)" s'affichent. Ce que je voudrais c'est que dès le submit ma page commence par être vide et au fur et à mesure du traitement voir apparaître le nombre de lignes traitées. Juste pour m'assurer que le traitement avance.

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Par défaut
    Tu peux pas vraiment.

    Tu peux toujours regarder du coté de ceci : http://fr.php.net/manual/fr/function.flush.php

    Mais comme il est expliqué dans la doc, de nombreux paramètres peuvent faire que ça fonctionnera pas.

  7. #7
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut
    OK merci.

  8. #8
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    le vrai problème est que y'a toujours une partie que tu ne peux pas régler : Par exemple, avec IE en validant un formulaire, il reste afficher jusqu'à avoir chargé une partie de la future page

    Pour parer ce problème, il faut mettre un événement sur le bouton ou le formulaire et faire un display none de la page par exemple

Discussions similaires

  1. [JSP][WEB] recuperer le contenu d'une page web
    Par ypikahe dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 14/03/2008, 11h10
  2. Affichage du contenu d'une page dans une cellule d'un tableau
    Par Fizgig dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 19/10/2007, 17h45
  3. Affichage du contenu d'une page dans un DIV
    Par aloisio11 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 17/10/2007, 13h02
  4. Réponses: 5
    Dernier message: 30/11/2005, 10h48
  5. Réponses: 2
    Dernier message: 16/07/2004, 10h30

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