|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juin 2007 Messages : 9 ![]() |
Bonjour à tous,
j'ai besoin d'uploader des images de maxi 2Mo. Voici mes contraintes (incontournables pour diverses raisons) : - hébergement mutualisé (= time_out au bout de 30" en php) - upload à partir du navigateur (pas de client FTP) - pas de CGI J'utilise jusqu'à présent un formulaire classique php, le problème est que certains utilisateurs ont une erreur 500 (due au time_out d'après mon hébergeur, bien que leur connexion ne soit pas forcément lente). Quelqu'un connait-il un moyen pour que n'importe qui puisse effectuer l'upload sans que ça plante? Merci de vos réponses . . . |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Tu es confronté à des contraintes techniques insumontable.
Mais en fait tu aurais bien un moyen, avec la fonction ini_set. Encore faut-il que ton hébergeur l'autorise, mais il ne devrait pas y avoir de contre indication. Dans le script de ton upload, tu met alors : Ainsi, tu passe de 30 secondes à 60. Bon, sache tout de même que les valeurs que tu annonces sont celles par défaut pour toute config PHP (mutualisé ou non).
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() |
|
|
|
00
|
|
|
#4 | ||
|
Invité de passage
![]() Inscription : juin 2007 Messages : 9 ![]() |
Merci de ton lien SubO, mais j'ai visité beaucoup de discussions du genre, et soit j'ai mal lu, soit je n'ai pas encore de solution.
J'ai testé par exemple l'envoi par ftp, mais comme la connexion ftp se fait en php, ... le time out est toujours actif. J'ai testé aussi en flash...marche pas non plus (erreur 500), J'ai jeté un oeil sur ajax, mais on a besoin de CGI... Par contre, quelques détails : Mon hébergeur (nuxit) n'utilise pas le safe mode. Par contre, le time out est bloqué à 30", d'après ce qu'ils m'ont dit, impossible de contourner. J'ai quand même essayé ça : Code :
|
||
|
|
00
|
|
|
#5 | |
|
Expert Confirmé
![]() |
Citation:
• Pour le FTP, c'est pareil, puisque ça ne fonctionne que de serveur à serveur, il faut donc tout de même passer par l'upload http pour envoyer un fichier du client vers le serveur. • Sinon, reste la solution d'utiliser une applet Java ou un programme RAD pour découper le fichier en bloc de 2Mo, les envoyer sur le serveur, avant de refusionner le fichier... • En dernier recours, tu peux utiliser des sites intermédiaires qui proposent l'upload de fichiers volumineux et les conservent quelques jours sur leur serveur... Tu peux peut-être ensuite essayer de le transférer sur ton serveur... |
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : juin 2007 Messages : 9 ![]() |
les utilisateurs doivent utiliser un système ultra simple, déposer leur fichier et c'est tout. En plus des images, j'ai des insertions dans une BDD, donc utiliser un site tiers n'est pas ma solution.
Java, ça serait bien, mais je n'y connais rien, je n'ai rien sous la main qui puisse m'aider. Après deux jours de galère, je me résigne : je teste le max_time du serveur, je lance un chronomètre asynchrone, et lorsque le temps est terminé, je renvoie vers une page explicative, qui propose diverses solutions à l'utilisateur (redimensionner ses images avant upload, entre autres). juste un détail : ces complications sont volontaires, je ne veux pas utiliser htaccess pour le renvoi. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com