Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/02/2011, 09h51   #1
Candidat au titre de Membre du Club
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations personnelles :
Localisation : Maroc

Informations forums :
Inscription : février 2011
Messages : 35
Points : 10
Points : 10
Par défaut Forcer l'utilisateur de télécharger un fichier.

Bonjour à tous.

je veux juste forcer l'utilisateur de télécharger un fichier sans l'ouvert dans la page web (Fichier : .txt .pdf ... ect)



Danx
truthlife est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 09h57   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
http://php.developpez.com/faq/?page=..._forcedownload
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2011, 10h05   #3
Candidat au titre de Membre du Club
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations personnelles :
Localisation : Maroc

Informations forums :
Inscription : février 2011
Messages : 35
Points : 10
Points : 10
Par défaut @ sabotage

@sabotage

Merci beaucoup Friend.
truthlife est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2012, 18h55   #4
Membre habitué
 
Patrick
Inscription : juin 2009
Messages : 102
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 39

Informations forums :
Inscription : juin 2009
Messages : 102
Points : 100
Points : 100
Par défaut Grande taille

bonjour,
Après test (avec le script de http://php.developpez.com/faq/langag..._forcedownload et celui de http://www.farkess.com/web/tutoriels...de-javascript/)

un ‘ooops’ :
Tout va bien en tous cas jusqu’à un filesize de 82 MB,
Par contre, si je test « 167.39 Mb », en réponse Firefox me propose de télécharger cette archive de « Document (230 octets) ».

Sachant que tous les fichiers offerts en « DOWNload » ont tous été ajoutés par des visiteurs en « UPload », et que j’imagine que toutes les limites UP (genre : upload_max_filesize : 300 MB) sont au moins valides pour le DOWN, je ne sais pas où chercher (mais ce n'est peut-être pas si vrai ?).

Pour info :
Les fichiers sont à priori des zip ou des videos => grandes tailles;
Le projet est sur infomaniak

Merci pour vos astuces et conseils,
Pat
cholopat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2012, 15h28   #5
Membre habitué
 
Patrick
Inscription : juin 2009
Messages : 102
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 39

Informations forums :
Inscription : juin 2009
Messages : 102
Points : 100
Points : 100
Par défaut gros et gras

Hello

Pour les gros fichiers (qui pourraient avoir la tendance à proposer de télécharger des document de quelques Ko), il convient de segmenter le readfile.

et donc de remplacer le simple
par quelque chose du genre
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
#readfile($fullPath);
$size = filesize( $fullPath );
$chunksize = 1 * (1024 * 1024); // how many bytes per chunk
if ($size > $chunksize) {
	$handle = fopen($fullPath, 'rb');
	$buffer = '';
	while (!feof($handle)) {
		$buffer = fread($handle, $chunksize);
		echo $buffer;
		ob_flush();
		flush();
	}
	fclose($handle);
} else {
	readfile($fullPath);
}
Hope it helps
Pat

PS : peut-être que cela pourrait être mis en note dans le
http://php.developpez.com/faq/?page=..._forcedownload
Mr Sabotage ?
cholopat est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h09.


 
 
 
 
Partenaires

Hébergement Web