Forcer un téléchargement (reprise du code de "ejbye7"), on synthétise !!

Soyez le premier à donner votre avis sur cette source.

Vue 16 140 fois - Téléchargée 878 fois

Description

Ce code sert à forcer le téléchargement d'un fichier (pratique pour les .txt .mp3 ...)que le navigateur essay de lancer tout seul alors que vous avez pas envie.

Source / Exemple :


<?PHP
ini_set("memory_limit","50M");//taille max du fichier
if (isset($fichier_forc)) {//verification que la variable a bien été envoyée
$fichier=$fichier_forc;
$ext=substr(strrchr($fichier,"."),1);
header('Content-disposition: attachment; filename='.$fichier.'');
switch($ext){//ici ajouter les types de fichier pour cela lancer regedit,developper le dossier "HHEY_CLASSES_ROOT" selectionner l'extention désirée en regarder la colonne "données" de la clée Content Type
case 'exe': header("Content-Type: application/force-download");
case 'zip': header("Content-Type: application/x-zip-compressed");
case 'mp3': header("Content-Type: audio/mpeg");
case 'txt': header("Content-Type: texte/plain");
}
readfile($fichier);//lecture du fichier
}else{
echo 'Erreur dans le traitement du fichier';
}
?>

Conclusion :


Ce code est la synthèse de tout ce qui a été dit dans le code de: "ejbye7" je remercie toutes les personne qui ont participé a ce code très utile (pensé personnelle)!!
Krankelune a posté une version d'un script du meme type sur cette page.Je le remercie dailleurs. Prennez son code qui est beaucoup plus sécurisé.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
1
Date d'inscription
mardi 15 mars 2011
Statut
Membre
Dernière intervention
5 avril 2011

Exact, le script ne fonctionne pas sur IE.
Sinon je cherchais une alternative qui permettrait d'avoir une variable à la place du nom du répertoire des fichiers.
Messages postés
6
Date d'inscription
mercredi 12 novembre 2003
Statut
Membre
Dernière intervention
27 juin 2009

Ok kankrelune,

ton script fonctionne parfaitement sur Firefox. Mais sur IE, il ne fait qu'afficher le fichier dans explorer.

As-tu la correction?

Merci d'avance
Messages postés
7
Date d'inscription
samedi 23 décembre 2006
Statut
Membre
Dernière intervention
3 février 2008

peut-on lister les fichiers par ordre alphabétique?
Merci d'avance !
Messages postés
79
Date d'inscription
jeudi 11 août 2005
Statut
Membre
Dernière intervention
17 mars 2011

Lis le poste précédent qui traite exactement ce que tu demande.
Messages postés
1
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
1 octobre 2007

Bonjour,

Je débute en php (disons que je bidouille plus ou moins "au pif" les scripts que j'utilise quand je ne peux pas faire autrement) et je ne sais pas comment indiquer au script de kankrelune le nom et le path des fichiers dans le passage :

/** path du répertoir contenant les fichiers (à éditer) **/
define('DOWNLOAD_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'files'.DIRECTORY_SEPARATOR);

Est-ce que vous pourriez m'éclairer ?

Merci d'avance !
Afficher les 23 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.