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

JavaScript Discussion :

Impossible de télécharger le fichier zip.


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut Impossible de télécharger le fichier zip.
    Bonjour à tous,


    Je m'entraîne actuellement à faire une petite appli web de gestion des utilisateurs en PHP5 et Zend framework et ça avance bien sauf que je suis bloqué sur un problème. Je veux pouvoir télécharger sous forme de fichier zip la liste des utilisateurs sélectionnés .

    J'ai un lien sur la page où se trouve la liste à télécharger. Lorsque je clique sur le lien le script php est appelé pour générer le fichier zip dans un répertoire export du serveur, ensuite la page est rechargée et affiche une popup de téléchargement du fichier zip.

    voilà le code javascript qui permet d'afficher la popup (je passe les détails d'insertion dynamique de l'url, et de l'exécution conditionnelle de l'ouverture de la popup):

    window.open("http://localhost/tuto/export/test.zip",'download','width=1, height=1');

    Le problème est que la popup s'affiche puis se ferme sans que rien ne se passe. lorsque je tape l'url "http://localhost/tuto/export/test.zip" dans la barre d'adresse du navigator le fichier zip est proposé en téléchargement.

    any help ?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 313
    Points : 330
    Points
    330
    Par défaut
    Et dans ta barre URL, si tu tapes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javascript:window.open("http://localhost/tuto/export/test.zip",'download','width=1, height=1');
    Ca donne quoi ?

    Si cela fonctionne aussi, c'est que tu as soit un problème dans la génération de cette ordre 'open', soit que ta fenêtre est fermée directement par ta fenêtre maitresse.

    Place des alerts sur tes variables du window.open pour vérifier ça.

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    pourquoi générer le zip dans un repertoire export ?
    Il serait plus simple de faire un force download en php directement ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par kernelfailure Voir le message
    Et dans ta barre URL, si tu tapes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javascript:window.open("http://localhost/tuto/export/test.zip",'download','width=1, height=1');
    Ca donne quoi ?

    Si cela fonctionne aussi, c'est que tu as soit un problème dans la génération de cette ordre 'open', soit que ta fenêtre est fermée directement par ta fenêtre maitresse.

    Place des alerts sur tes variables du window.open pour vérifier ça.
    quand je tape:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javascript:window.open("http://localhost/tuto/export/test.zip",'download','width=1, height=1');
    j'ai le même comportement, la fenêtre s'ouvre et se referme aussitôt. Dans la fenêtre maîtresse j'ai la chaîne "[object]" qui s'affiche.

    Je signale que ça marche très bien pour un fichier xml.

    Tu parles de placer des alerts sur mes variables du window.open ? je ne comprend pas très bien. De quelles variables s'agit - il ?

  5. #5
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    pourquoi générer le zip dans un repertoire export ?
    Il serait plus simple de faire un force download en php directement ...
    Peux tu m'en dire plus sur cette technique, me dispenserait elle de créer un zip sur le serveur ? Qu'est ce que cette technique peux m'apporter ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Oui elle dispense d'avoir à enregistrer le zip sur le serveur.
    le fichier pointé génère et retourne le zip directement
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 313
    Points : 330
    Points
    330
    Par défaut
    Citation Envoyé par capitaina Voir le message
    Tu parles de placer des alerts sur mes variables du window.open ? je ne comprend pas très bien. De quelles variables s'agit - il ?
    J'imagine que l'emplacement ni le nom de ton fichier ne sont connu au début. Le but est de tracer le contenu des variables.

    Une chaine [Objet] s'affiche ? C'est bizarre ça. T'aurais pas un mode debug ou je ne sais quoi d'activer sur ton navigateur ? Un truc particuliers du fait de ta zone localhost ?

    . . .

    Ce dont parle Spacefrog est effectivement une alternative.
    Pour ton cas, ton script PHP va renvoyer des données binaires (celle du zip). Pour que la connexion s'établisse, il faudra spécifier le type mime dans le header de transaction (J'ai plus ça en tête, mais la doc ne manque pas - fonction header() il me semble).
    Ainsi, PHP peut très bien être utilisé pour créer ou renvoyer une image. En fait, par exemple, dans une balise IMG tu as un script php en src.

    Donc, ici, ton lien dirige vers un script PHP qui fournit directement le zip. Zéro stockage, mais compression en temps réel.

Discussions similaires

  1. Réponses: 2
    Dernier message: 02/12/2014, 13h51
  2. [PHP 5.3] Impossible de télécharger un fichier zip
    Par snake264 dans le forum Langage
    Réponses: 11
    Dernier message: 03/09/2011, 21h03
  3. Impossible de télécharger des fichiers depuis mon serveur
    Par amine55555 dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 12/05/2007, 14h15
  4. Impossible de Télécharger les fichiers joints
    Par Rabie de OLEP dans le forum Internet
    Réponses: 1
    Dernier message: 27/04/2007, 10h17
  5. Télécharger un fichier Zip depuis une adresse internet
    Par jmjmjm dans le forum Web & réseau
    Réponses: 8
    Dernier message: 18/10/2005, 19h12

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