CONTOURNER LA LIMITE DE TAILLE DES FICHIERS IMPOSÉE PAR CERTAINS HÉBERGEURS

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 17 juin 2006 à 11:53
creat1 Messages postés 3 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 18 octobre 2007 - 18 oct. 2007 à 19:36
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/38152-contourner-la-limite-de-taille-des-fichiers-imposee-par-certains-hebergeurs

creat1 Messages postés 3 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 18 octobre 2007
18 oct. 2007 à 19:36
Je ne comprends pas comment vous faites.
Le script fonctionne tres bien, tant que le fichier
à une taille inferieur à upload_max_filesize.

Des que le fichier depasse cette taille, le script ne recoit meme
pas l'info venant du formulaire!
isset($_FILES['userfile']['name']) est false!

pourriez vous m'aider?
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
29 déc. 2006 à 11:24
Bon j'ai updaté mon code, mais très franchement, maintenant que j'ai mis mon site à jour j'ai la flemme d'updater la source de phpcs
Donc faites un tour sur le site si vous voulez l'update: http://phpmagic.awardspace.com/
ironzorg Messages postés 45 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 27 juin 2008
18 sept. 2006 à 18:45
Pas mal ... Perso j'aime bien meme si cela ne relève pas de ma compétence de donner mon avis dans ce genre de site ( genre site dédié au PHP :p )

Signé : un inconditionnel du cpp ...
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
27 juin 2006 à 17:30
wow chouettos je ne savais pas qu'il y avait une commande...
et pour répondre à zeratul67, comme je l'ai dit précédemment cette découpe est possible en php, tout simplement en découpant le fichier uploadé quand il est encore dans le fichier temporaire du serveur (la restriction de taille n'est alors pas encore appliquée). Regardez le code que j'ai uploadé sur mon site: http://phpmagic.awardspace.com il découpe le fichier et créer le fichier contenant le code php qui le re-rassemble. Dites moi ce que vous en pensez et j'aimerais bien que des gens l'essayent (en fait je ne suis pas sur à 100% que ça fonctionne sur tout les serveurs, mais si c'est le cas j'updaterais le code de phpcs).
Par contre découper en javascript, à mon avis, ça le fait pas trop :D
Killvador Messages postés 19 Date d'inscription dimanche 12 janvier 2003 Statut Membre Dernière intervention 27 juin 2006
27 juin 2006 à 14:02
Pour les GNU/linuxiens, la commande split ressemble à ceci :

split -b taille -d -a 3 fichier fichier.

ou vous pouvez utilisez les suffixes k et m pour la taille (pour free 1 ou 2 m est une bonne taille).

le premier "fichier" est le nom du fichier à découper et le second est le préfixe (donc ne SURTOUT pas oublier le point à la fin).

Voila, j'aurais envie de dire gg kurt !

Pour démonstration de ce système : http://wildersmovies.free.fr/ -> la Maison de l'erreur
Quoi? de la pub??, mais vous mentez ! c'est pas vrai!
zeratul67 Messages postés 97 Date d'inscription mardi 9 avril 2002 Statut Membre Dernière intervention 11 mai 2008
25 juin 2006 à 14:23
Ce qui serait sympa c'est une découpe et un upload via un script client, type javascript. Malheureusement il me semble que c'est bien trop incursif pour que le navigateur laisse faire ...
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
19 juin 2006 à 19:52
lol merci :D
Il y a quelque chose de très utile que j'aimerais posté mais je ne suis pas sur de son fonctionnement (il a "l'air de fonctionner", mais j'aimerais de vrais avis).
En fait l'idée serait d'uploader les fichiers du pc sur le serveur via un script php qui découpe directement en morceaux ce fichier. Rappelez vous de la procédure: on utilise une fonction pour copier le fichier uploadé dans le cache de l'hébergeur dans un dossier du site. Maintenant en remplaçant 2 lignes de la première parties (celle qui définie $file et la ligne du fopen) par celles-ci:
$file = basename($_FILES['userfile']['name']);
$handle = fopen($_FILES['userfile']['tmp_name'], "rb")
or die ("Lecture impossible !");
On ouvre le fichier qui est dans le cache de l'hébergeur et les lignes qui le suivent le coupe en fichier de taille autorisée. Pretty cool n'est-ce pas? Mais la question du siècle vient maintenant: est-ce que le host a déjà appliqué sa restriction aux fichiers en cache? Sur awardspace ça marchait, mais ça serait bien si des gens pouvaient essayer. Je ne m'y connais pas trop non plus en config de apache: pour appliquer cette restriction l'applique-t'on juste aux fichiers uploadés par ftp?
aze555666 Messages postés 208 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 26 janvier 2009
19 juin 2006 à 18:45
très très bien.
J'avais justement eu le probleme avec des photos 6Mpx que je voulais mettre sur pandela (pour ceux qui ne connaissent pas, www.pandela.com est un exellment hébergeur gratuit. fo juste comprendre l'anglais le temps de créer le compte).
10/10 pour l'idée, la réalisation, et l'utilité du code.
WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
19 juin 2006 à 05:31
J'ai testé et j'aime beaucoup le principe, j'ai aussi testé un upload au passage, j'ai uploadé 4mo sur free et c'est passé...

En tout cas le code est bon et très bien pensé, bravo ^^
aller 8/10
TheSin Messages postés 331 Date d'inscription mardi 12 novembre 2002 Statut Membre Dernière intervention 10 février 2009
18 juin 2006 à 13:29
Très intéressant, c'est pas bête du tout et très bien pensé :-)
Ca devrait servir à plus d'un je pense ;-)
J_G Messages postés 1406 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 28 août 2007 10
18 juin 2006 à 11:45
Excuse, j'avais lu "Initié".
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
18 juin 2006 à 11:37
Euh... "Niveau de la source : Débutant". On peut pas mettre plus bas il me semble, si?
En tout cas merci pour le conseil et un de ces 4 je ferais une update avec ta fonction.
J_G Messages postés 1406 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 28 août 2007 10
18 juin 2006 à 11:32
Salut,

Ma foi, cette source est originale... Donc c'est intéressant!
Par contre, le niveau "initié" est peut-être légèrement sur-évalué. Non ? Les fonction fopen, fgets et readfile sont tout de même la base...
Enfin c'est mon avis

A+

Petit commentaire en plus :
Dans la partie découpage de fichier
# while (strlen($istring) < 3)
# $istring = "0".$istring;
Il existe une fonction pour ça http://fr.php.net/manual/fr/function.str-pad.php
# $istring = str_pad($istring, 3, '0', STR_PAD_LEFT);
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
18 juin 2006 à 11:08
La taille maximum d'un fichier uploadé chez Free c'est 80Mo en ftp et 2Mo en http. à+
WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
18 juin 2006 à 00:26
oui assez :)

J'ai ce compte chez free depuis 4 ans et le fichier ca fais bien un an et demi qu'il est dessus

mais ils on peut être limités depuis...
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
17 juin 2006 à 23:21
Tiens c'est bizarre... j'ai un pote qui m'a dit qu'il n'arrivait pas à uploader les fichiers de plus de 2mo... Peut-être qu'ils l'ont mis en place récemment? Tu l'as depuis longtemps ton fichier de 20mo sur free?
WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
17 juin 2006 à 20:30
Heu... j'ai un fichier de 20mo chez free :-S
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
17 juin 2006 à 13:31
Oui bien sur mais moi perso j'ai php en localhost mais mon site est sur un hébergeur gratuit parce que ma connexion n'est pas suffisante et je n'ai pas mon pc allumé h24. Ce que je veux dire c'est qu'on peut s'en servir pour couper le fichier, mais c'est plus simple d'utiliser un vrai programme comme ceux cités.
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
17 juin 2006 à 13:28
"Le code que j'ai posté est largement améliorable"
"Mais si vous avez php en localhost vous pouvez vous servir du code suivant."

> Si t'as PHP en localhost, c'est que t'as accès à Apache... :o
cs_KOS Messages postés 3 Date d'inscription lundi 6 janvier 2003 Statut Membre Dernière intervention 19 janvier 2007
17 juin 2006 à 12:46
Ben franchement, c'est bien pensé, et bravo pour tes recherches... surtout pour les providers libres et gratuits auquel souvent, ils limitent la taille des fichiers...


Bravoo !!!
kurt67 Messages postés 48 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 4 avril 2007
17 juin 2006 à 12:37
Interdit pourquoi? J'ai mis mon code sur phpcs donc pas de problême. Et pour le pubs google, je doute que google soit franchement content que les utilisateurs cliquent pour aider le webmaster et non parce que les pubs les intéresse, mais bon tant pis. De toute façon le site n'est visité que par des googlebots :D
Sinon je précise parce que c'était pas très bien expliqué: le code php de la ligne 1 à 32 n'est pas vraiment importante, c'est juste pour couper un fichier. Mais dans aucun cas, ne mettez toutes les lignes de 1 à 67 dans un même fichier. La seconde partie (lignes 34 à 67) sert à réassembler le fichier. Je dis ça parce qu'on ne sait jamais, sur d'autres sources je me suis déjà heurté à des incompréhensions de newbies sur des choses qui me paraissaient évidentes (c'est pas un reproche cela dit).
Je précise également que ce code peut être un très bon complément de sécurité pour ceux qui utilisent le systême allopass avec le php.
Le code que j'ai posté est largement améliorable (par exemple généré un header différent en fonction du fichier) mais c'est à vous de voir... J'attend vos commentaires.
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
17 juin 2006 à 11:53
"Si vous avez aimé allez sur mon site 'et cliquez sur le pubs'"

C'est pas interdit de faire ça ?