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 :

[Upload] Barre de chargement pour envoi de fichier [Fait]


Sujet :

Langage PHP

  1. #1
    Inscrit
    Avatar de Caerbannog
    Inscrit en
    Novembre 2004
    Messages
    206
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 206
    Points : 273
    Points
    273
    Par défaut [Upload] Barre de chargement pour envoi de fichier
    Bonjour !

    J'ai besoin de récupérer les fichiers que des utilisateurs m'envoient par le web. A priori, je vais mettre un simple " input type='file' " en html, et je pensais récupérer le fichier en php.
    Mais je veux aussi mettre une barre de progression du transfert qui soit réaliste. Pour ça, j'utiliserai XMLHttpRequest et ses pour IE, en demandant à intervalles réguliers au serveur où le transfert en est.
    Le problème est simple : je ne connais pas de moyen, avec PHP, d'exécuter un script avant la copie entière du fichier dans les dossiers temporaires.

    La solution à laquelle je pense est plus complexe : il faudrait un programme exécuté en local qui serait chargé de recevoir le fichier et, avec un autre thread, de répondre aux requêtes de Javascript quand à la progression.

    Et c'est là que ça coince... En effet, le programme (en C++, probablement) doit recevoir la connexion du navigateur (lequel envoie le fichier par HTTP), alors qu'apache fonctionne toujours. Donc sur un autre port. Or XMLHttpRequest ne peut se connecter qu'au serveur de la page html, et sur le même port (pour des raisons de sécurité). Alors comment le programme en C++ pourrait-il recevoir la connexion ?

    Je vois plusieurs solutions :
    • Intégrer le programme à Apache (extension) ?
    • Intercepter certaines connexions que devrait recevoir Apache (j'ai pas de copain qui bosse à la CIA...)
    • Mettre un iFrame dans la page, qui contiendrait le formulaire envoyé par le programme de réception du fichier ?


    Je pense utiliser la troisième, qu'en pensez-vous ? Y aurait-il quelque-chose de beaucoup plus simple ?

    PS: Personne n'a répondu à ce sujet sur le forum Dev-Web, je pense donc que c'est ici que je devrait le mettre.

    Merci d'avance,
    Caerbannog.

  2. #2
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    bonjour,

    je pense que tu devrais aller faire un tour par la http://pear.php.net/package/HTML_Progress2
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

  3. #3
    Inscrit
    Avatar de Caerbannog
    Inscrit en
    Novembre 2004
    Messages
    206
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 206
    Points : 273
    Points
    273
    Par défaut
    Merci d'avoir répondu aussi vite, je ne connaissais pas cette classe pear, et je m'en servirai peut-être.
    Malheureusement le problème n'est pas de montrer l'avancement du download par le client de la page qui affiche le résultat, mais de montrer l'avancement de l'upload d'un fichier (lequel peut être très gros) !

    Il faut donc un moyen de modifier la barre de chargement avant que le fichier soit complètement enregistré sur le serveur (dans les fichiers temporaires), donc avant que le script php ne soit lancé...

    Le problème n'est donc pas encore résolu...

  4. #4
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    desole, mais jette un coup d'oeil ace lien, cela pourra surement t'interreser http://www.raditha.com/php/progress.php
    tu as aussi une applet http://jupload.biz/
    La je pense que tu vas trouver ton bonheur
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 30/07/2008, 12h07
  2. [Upload] Barre de progression pour upload volumineux
    Par cortex024 dans le forum Langage
    Réponses: 2
    Dernier message: 05/09/2007, 21h05
  3. [Upload] Insérer un formulaire avec envoi de fichier.
    Par simplyme dans le forum Langage
    Réponses: 7
    Dernier message: 13/06/2007, 11h22
  4. [Upload] meilleure solution pour envoi de fichiers
    Par gforce dans le forum Langage
    Réponses: 10
    Dernier message: 29/03/2007, 15h25
  5. Barre de chargement pour jeu 2D
    Par franck06 dans le forum 2D
    Réponses: 6
    Dernier message: 16/02/2007, 14h51

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