Aller au contenu

Php : Démarrer Automatiquement Un Téléchargement


Invité Terry

Messages recommandés

Bonjour,

J'aimerais savoir comment faire démarrer automatiquement le téléchargement d'un fichier ".zip" si la variable est "oui".

J'ai essayé ça, mais ça ne marche pas :

if ($id=='oui') {header("Location: dossier.zip");}

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

J'aimerais savoir comment faire démarrer automatiquement le téléchargement d'un fichier ".zip" si la variable est "oui".

J'ai essayé ça, mais ça ne marche pas :

if ($id=='oui') {header("Location: dossier.zip");}

Ca a quel effet, rien ?

Lien vers le commentaire
Partager sur d’autres sites

Ok dans ce cas faut modifier le header du fichier surement :

header("Content-type: application/zip");
header("Content-Disposition: attachment; filename=\"dossier.zip\"");
header("Location: dossier.zip");

PS : pense que l'attachement se fait par rapport au chemin relatif (ou absolu) par rapport au fichier de download, celui qui est appelé, pas inclus.

Lien vers le commentaire
Partager sur d’autres sites

Ben forcément ... tu ne peux plus manipuler le header si tu as déjà renvoyé des données au client. Tu as donc dû désactiver l'affichage de certaines erreurs.

Au tout début de ton script tu peux rajouter

error_reporting(E_ALL);

Le mieux c'est de lire la doc : header()

Lien vers le commentaire
Partager sur d’autres sites

En html je place ceci dans <body> pour faire démarrer un téléchargement automatiquement :

<body onLoad="location.replace('dossier.zip');">

Ca marche très bien.

Donc normalement en php :

if ($id=='oui')

{echo "<body onload='location.replace(\"dossier.zip\")";}

ou :

if ($id=='oui')

{echo "<body onload='window.open(\"dossier.zip\",\"download\",\" \")";}

Que je met ce code avant, après ou dans <body>, ça affiche : <body onload='window.open("dossier.zip","download"," ")

mais ne télécharge pas.

Où est l'erreur ?

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...

Information importante

By using this site, you agree to our Conditions d’utilisation.