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 :

cURL et progressbar


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2011
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2011
    Messages : 73
    Par défaut cURL et progressbar
    Bonjour a tous,
    Je sais que le problème a déjà été traité mais après des heures de recherche sur mon pote google je n'ai rien trouvé qui me satisfasse pleinement ...
    Je suis en train de coder un multiuploader donc j'utilise du cURL pour envoyer les fichiers sur les serveurs distants (megaupload, wupload etc ...).
    Ce que je voudrais faire c'est : afficher une barre de chargement lors de l'upload du fichier sur le serveur distant pour ne pas laisser l'utilisateur en suspend devant son 'Loading' voici mon code :
    Code php : 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
    30
    31
    32
    33
     
    function callback($download_size, $downloaded, $upload_size, $uploaded)
    {
    // ma barre de chargement en fonction des valeurs de la fonction
    }
     
     
    $url = "Lien de l'upload";
    $timeout = 60;
     
    $ch = curl_init($url);
     
    curl_setopt($ch, CURLOPT_NOPROGRESS, false);
    curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, 'callback');
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_BUFFERSIZE, 128);
    // Utilisation de la méthode POST
    curl_setopt($ch, CURLOPT_POST, true);
     
    // Définition des champs et valeurs à envoyer
    curl_setopt($ch, CURLOPT_POSTFIELDS, array(
    'file' => "@".$file,
    'no_script' => '1',
    'no_script_submit' => 'Ok'
    ));
     
    $page_content = curl_exec($ch);
    recuperation et affichage du lien de luploader
    curl_close($ch);

    Tout marche a exeption pres que la fonction callback affiche ses valeurs quand le fichier a fini d'être uploadé (normal me direz vous !) mais je voudrais les afficher au fur et a mesure ...
    J'ai pensé a placer la fonction dans un fichier externe et a la tester avec une commande js xHr cependant pour faire cela il faudrais que la fonction cURL ait un id spécifique temporaire pour que callback puisse identifier le bon upload ...
    Et si je fais un return dans callback le script entier s'arrete donc ...
    Merci de votre aide par avance.

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920

  3. #3
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2011
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2011
    Messages : 73
    Par défaut
    Merci pour ta réponse.
    On dirait qu'il y as du mieux par contre j'appelle cette page en ajax et du coups ça s'affiche quand meme a la fin il faut que je l'appelle avec xHr non ?

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par Onyrio Voir le message
    Merci pour ta réponse.
    On dirait qu'il y as du mieux par contre j'appelle cette page en ajax et du coups ça s'affiche quand meme a la fin il faut que je l'appelle avec xHr non ?
    dans ce cas il va falloir passer par APC

  5. #5
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2011
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2011
    Messages : 73
    Par défaut
    J'utilise déja apc pour l'upload du fichier venant de l'utilisateur sur mon serveur, par contre je ne sais pas comment l'utiliser pour l'upload du fichier sur mon serveur sur un serveur distant ...

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par Onyrio Voir le message
    J'utilise déja apc pour l'upload du fichier venant de l'utilisateur sur mon serveur, par contre je ne sais pas comment l'utiliser pour l'upload du fichier sur mon serveur sur un serveur distant ...
    c'est la même chose, tu créer une variable aléatoire, dans ton callback tu fais un apc_fetch avec les infos, après tu 'utilise le même système que pour l'upload pour la récupération

Discussions similaires

  1. [MFC] afficher une ProgressBar dans une barre d'etat
    Par guillaume21 dans le forum MFC
    Réponses: 5
    Dernier message: 30/03/2007, 11h16
  2. ProgressBar style XP
    Par Rodrigue dans le forum C++Builder
    Réponses: 3
    Dernier message: 08/11/2003, 09h36
  3. comment programmer une progressbar
    Par Choucas dans le forum Paradox
    Réponses: 3
    Dernier message: 13/11/2002, 11h07
  4. ProgressBar avec plusieurs procédures
    Par elifqaoui dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 08/09/2002, 18h03
  5. Couleur de ProgressBar
    Par benj63 dans le forum C++Builder
    Réponses: 7
    Dernier message: 04/07/2002, 17h33

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