Fenetre de téléchargement

Framboos ! -  
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Comment forcer l'apparition de la fenêtre de téléchargement (sous IE [8 pour ma part]) qui propose d'ouvrir ou d'enregistrer en code HTML ou JS ? Car lorsque je fais un lien vers une vidéo que j'ai réalisé, Internet Explorer me l'ouvre automatiquement avec Media Player.

Merci d'avance.
A voir également:

6 réponses

Utilisateur anonyme
 
Il faut passer par PHP, et sa fonction header... Mais il faut d'abord savoir si ton hébergeur accepte le PHP.
0
Utilisateur anonyme
 
Oui il accepte le php.
Peux tu me donner le code nécessaire en php s'il te plait.
0
Utilisateur anonyme
 
up :(
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Crées un fichier "telecharger-video.php" (par exemple) contenant ceci :
<?php
header('Content-type: video/mpeg');
header('Content-Disposition: attachment; filename="video.mpeg"');
readfile('video.mpeg');
?>

Ce que j'ai souligne sur la 2ème ligne, c'est le type MIME de ta vidéo. Pour savoir lequel utiliser : ici.
Sur la 3ème ligne, c'est le nom du fichier (et seulement le nom).
Sur la 4ème, c'est le chemin du fichier (ça fonctionne de la même manière qu'en (x)HTML).
Pour terminer, fais pointer ton lien vers ce fichier (PHP).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
Merci mais ca fonctionne tjs pas. le t"l"chargement s'arrête vers 58% (~=450 Mo) pour un film par exemple.

j'avais essayé ça :
	$dir="./nom_dossier/";
	$file=$dir."nom_lien.avi";
	
	header("Content-disposition: attachment; filename=\"".basename($file)."\"");
	header("Content-Type: application/octet-stream" );
	header("Content-Type: application/force-download");
	header("Content-Type: application/download" );
	header("Content-Transfer-Encoding: Binary");
	header("Content-length: ".filesize($file));
	header("Expires: 0");
	header("Cache-Control: no-cache, must-revalidate");
	header("Pragma: no-cache");
	@set_time_limit(0);
	readfile("$file");


Mais tjs le même effet.
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Ça ne sert à rien de mettre plusieurs Content-Type !
Je penses qu'il faudrait utiliser header('Expires: 0');
Regarde ici.
0