Upload gros fichier

fufu
Invité n'ayant pas de compte PHPfrance

17 juin 2009, 15:44

Bonjour,

J'ai un pb et je sèche complètement. Je suis entrain de créer un site de photo pour le mariage d'un ami et j'ai un souci, j'ai créé un formulaire pour que n'importe qui puisse poster ses propres photos sur le site.

Au début j'avais coder ça pour que l'utilisateur envoie ses photos avec un formulaire html mais il était obligé d'envoyer ses photos une par une ce qui est plutôt long si on a beaucoup de photo.
J'ai donc modifier mon script pour qu'il accepter les zip et ainsi permettre aux utilisateur d'envoyer plusieurs photos en une fois sous forme d'archive.

Mon pb est que si l'archive est trop grosse le script plante.

Donc est-il possible d'envoyer des gros fichiers (au moins 100mo) avec un formulaire html et du php? Si oui comment faire et comment afficher a l'utilisateur que la page n'a pas plantée mais que ça prend du temps pour uploader l'archive?

Ou alors peut on creer un script php qui fasse une connexion ftp pour pouvoir uploader le zip sans problème de taille ?

Ce sont les seules solutions auxquelles j'ai pensé mais si vous avez des propositions je suis preneur.

Merci d'avance

Simon

Mammouth du PHP | 531 Messages

17 juin 2009, 15:49

100 mo ??

La je crois qu'il fraudais que tu passe par un module d'upload java qui hache les fichiers...

ViPHP
ViPHP | 5924 Messages

17 juin 2009, 19:11

Mon pb est que si l'archive est trop grosse le script plante.

Donc est-il possible d'envoyer des gros fichiers (au moins 100mo) avec un formulaire html et du php? Si oui comment faire et comment afficher a l'utilisateur que la page n'a pas plantée mais que ça prend du temps pour uploader l'archive?
Tu as un dédié ?
Ou alors peut on creer un script php qui fasse une connexion ftp pour pouvoir uploader le zip sans problème de taille ?
Là il faut que tu revoies les principes de fonctionnement de php. php s'exécute côté serveur, et la connexion ftp s'initialise par le client, donc il y a problème. Si tu veux uploader les fichiers par ftp mais dans une page web, il faut que tu fasses un applet java, flash, ou encore silverlight…

ViPHP
ViPHP | 1136 Messages

17 juin 2009, 20:33

Salut ,
Là il faut que tu revoies les principes de fonctionnement de php. php s'exécute côté serveur, et la connexion ftp s'initialise par le client, donc il y a problème. Si tu veux uploader les fichiers par ftp mais dans une page web, il faut que tu fasses un applet java, flash, ou encore silverlight…
Tu peux trés bien uploader des fichiers en utilisant un protocole FTP , en natif dans php .
Mais il est vrai que l'interactivité ne sera pas la même qu'avec un vrai client FTP .

Cependant , tu restes toujours bloqué par le temps maximum d'exécution d'un script time_limit.

Tu peux le modifier pour passer outre .. set_time_limit()
Mais bon , je ne pense vraiment pas que php soit la meilleurs solution pour uploader de si gros volumes ..

Maintenant , si tu as un dédié , tu peux faire un peu ce que tu veux ...
Augmenter post_max_size et upload_max_filesize .. tu pourras ainsi uploader direct en POST ...

Avec APC d'activé , tu pourrais même suivre l'upload via une barre de chargement par exemple ...
PHP permet tout ça .. mais encore une fois , je ne pense pas que ce soit la meilleurs solution !

Ch.

ViPHP
ViPHP | 5924 Messages

17 juin 2009, 22:20

Là il faut que tu revoies les principes de fonctionnement de php. php s'exécute côté serveur, et la connexion ftp s'initialise par le client, donc il y a problème. Si tu veux uploader les fichiers par ftp mais dans une page web, il faut que tu fasses un applet java, flash, ou encore silverlight…
Tu peux trés bien uploader des fichiers en utilisant un protocole FTP , en natif dans php .
Mais il est vrai que l'interactivité ne sera pas la même qu'avec un vrai client FTP .
Non, je persiste.
On parle d'uploader des fichiers du client vers le serveur en ftp, et php ne peut rien là dedans. php s'exécute sur le serveur, il ne peut pas gérer la connexion ftp. Tu pourrais créer un serveur ftp en php pour recevoir le transfert, cela ne changerait rien au problème, tant qu'il n'y a pas de serveur ftp chez le client, c'est à lui d'initier le transfert.

ViPHP
ViPHP | 1136 Messages

18 juin 2009, 07:46

C'est exacte ,
Je n'ai pas pris le problème du bon coté ... je voyais le fichier déjà sur le serveur .. mais avant ça , le tranfert entre le client et le serveur se fait en POST de toute maniére !

Autant pour moi #-o

Sa seule solution s'il ne veut pas de techno autre , sera de pourvoir modifier son php.ini afin d'augmenter la taille maximum des donnée POST .

Don dédié oblige pour cette solution !

Ch.

ViPHP
ViPHP | 5924 Messages

18 juin 2009, 08:03

C'est exacte ,
Je n'ai pas pris le problème du bon coté ... je voyais le fichier déjà sur le serveur .. mais avant ça , le tranfert entre le client et le serveur se fait en POST de toute maniére !
Bah non, pas forcément.
C'est pour ça qu'on parlait de ftp, c'est qu'il peut très bien faire un applet qui uploade les fichiers en ftp sur le serveur. Mais dans ce cas là on ne passe plus par PHP.

amidevous
Invité n'ayant pas de compte PHPfrance

05 févr. 2012, 19:54

bonsoir si vous savez comme uploader de gros fichier merci de m'envoyer le scrip complet car je ne connais ni le html ni le php j'utilise web creator pro voila mon mail
[email protected]
merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

06 févr. 2012, 13:00

==> y a un forum pour l'esclavagisme ;)

=>projets-entraide/

@+
Il en faut peu pour être heureux ......