probleme d'upload vraiment bizarre

ViPHP
AB
ViPHP | 5818 Messages

22 août 2007, 12:55

J'ai essayé ce script (sans configurer quoi que ce soit) et il fonctionne sur un fichier de 13 Mo chez seconde.fr et online.net qui sont mes deux hébergeurs.

ViPHP
ViPHP | 5924 Messages

22 août 2007, 22:51

Il est très possible que ce que tu veuilles faire dépasse les possibilités de ton serveur. Peut-être devrais-tu demandé conseil aux administrateurs (ton hébergeur). Comme je l'ai mentionné à plusieurs reprises, la grande majorité des serveurs ne permettent pas ces configurations.
En même temps, je pense que le fait d'autoriser cette fonctionnalité peut être considéré comme une faille de sécurité. Ca peut provoquer l'équivalent d'une attaque DOS…

ViPHP
AB
ViPHP | 5818 Messages

23 août 2007, 00:27

En même temps, je pense que le fait d'autoriser cette fonctionnalité peut être considéré comme une faille de sécurité. Ca peut provoquer l'équivalent d'une attaque DOS…
Si tu parles de ini_set('memory_limit', ...), effectivement aucun de mes hébergeurs ne prend en compte ce paramétrage. J'en ai parlé suite à ton message mais dans la pratique, le paramétrage par défaut des serveurs ne m'a encore jamais posé de problème à ce niveau là.

Son pb de redimensionnement ne doit pas venir des paramètres dont nous avons parlés dans ce billet puisque j'ai fait plusieurs essais avec succès sur deux mutualisés sans absolument rien paramétrer :-k

bazura1
Invité n'ayant pas de compte PHPfrance

23 août 2007, 08:53

j'ai testé le script de AB pareil meme pb par contre en local c mieux mais pour un max de 2 mo

a mon avis ca vient de mon hebergeur
file_uploads                  On On 
gpc_order                    GPC GPC 
highlight.bg                 #FFFFFF #FFFFFF 
highlight.comment            #FF8000 #FF8000 
highlight.default              #0000BB #0000BB 
highlight.html                       #000000 #000000 
highlight.keyword             #007700 #007700 
highlight.string                   #DD0000 #DD0000 
html_errors                      On On 
ignore_repeated_errors     Off Off 
ignore_repeated_source   Off Off 
ignore_user_abort            Off Off 
implicit_flush                     Off Off 
log_errors_max_len               1024 1024 
magic_quotes_gpc              On On 
magic_quotes_runtime          Off Off 
magic_quotes_sybase            Off Off 
max_execution_time       50000 50000 
max_input_time                     -1 -1 
memory_limit                    40M 40M 
open_basedir              no value no value 
output_buffering                   0 0 
output_handler                     no value no value 
post_max_size               8M 8M 
precision                       14    14     

Petit nouveau ! | 6 Messages

23 août 2007, 10:16

J'ai tester des images de differentes dimensions. Le script se realise sans probleme jusqu'a une dimensions de 2300x1725px.
Pour une image de 2400x1800px le script ne bloque pas a imagecreatefromjpeg mais a imagecretetruecolor.
Pourtant les valeurs pour imagecreatecolor sont toujours de 600px et 450px.
En augmentant a 2500x 1875px le script bloque a imagecretatefrom.

Donc je pense que le probleme provient bien d'un probleme de memoire ou quelque chose comme ca.

Mes images ont toutes des poids "legers" car il s'agit d'image "blanche".

Encore merci pour toute votre aide

Guillaume

ViPHP
ViPHP | 5924 Messages

23 août 2007, 11:58

Donne les poids, les tailles ca ne veut rien dire. Une image 2000 par 2000 en jpeg peut avoir le même pids qu'une image 100 par 100 si la première a une compression très forte et la seconde n'en a pas.

Bazura1
Invité n'ayant pas de compte PHPfrance

23 août 2007, 18:19

Bon la franchement c abusé,

alors j'ai pris le script de AB je le remet
<html>
<body>

<?php
//script de redimensionnement pour une image jpg se trouvant sur le serveur à l'adresse suivante 
$adres = 'mesuploads/CAQ3KHIR.jpg'; echo 1;

$source = imagecreatefromjpeg("$adres");  echo 2 ;

// Les fonctions imagesx et imagesy renvoient la largeur et la hauteur de l'image 
$largeur_source = imagesx($source); 
$hauteur_source = imagesy($source); echo 3 ;

//redimensionnement à une largeur de 400px 
$rap = $hauteur_source/$largeur_source; $largeur = '400'; $hauteur = round($largeur * $rap); 
$destination = imagecreatetruecolor($largeur, $hauteur); 

$largeur_destination = imagesx($destination); 
$hauteur_destination = imagesy($destination); 

// On crée la miniature 
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source); 

// On enregistre la miniature sous le nom "mini_couchersoleil.jpg" 
imagejpeg($destination, 'mesminia/CAQ3KHIR.jpg',100); 
?> 
</body>
</html>
j'ai upload moi meme une photo
(1 264 989 octets) 2560 x 1920 px

le script affiche direct l' echo 1 et hop plus rien

y vraiment un pb

bazura1
Invité n'ayant pas de compte PHPfrance

23 août 2007, 18:47

BON c un pb de memoire 1&1 ne donne que 40mo et ma photo fait 76 mo voila

qui connait un bon herbergeur?????

ViPHP
ViPHP | 5924 Messages

23 août 2007, 19:39

Non, là tu rève, ce n'est pas parce qu'il autorise 40Mo de mémoire vive par script que c'est un mauvais hébergeur. Au contraire, j'ai été très étonné de voir que la limite était si haute. Et à mon avis, à moins de prendre un dédié, tu ne trouveras pas beaucoup plus haut, et c'est tant mieux.

ViPHP
ViPHP | 2287 Messages

23 août 2007, 20:14

BON c un pb de memoire 1&1 ne donne que 40mo et ma photo fait 76 mo voila
Bien d'accord avec Sekiltoyai, et j'ajoute :

Tu as mis une semaine à trouver tout seul ce qu'on t'avait pourtant dit en première page de ce sujet. Combien de temps vas-tu mettre à réaliser que ce genre d'opération n'a pas à se faire dans une page web ? C'est bien trop lourd... Soit il te faut une configuration musclée, et donc un dédié, soit il te faut faire autrement (traiter l'image avec des outils adaptés pour du gros boulot, tout sauf php/GD quoi) et te limiter à des traitements sur des volumes raisonnables.
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

23 août 2007, 20:50

Il suffit de lire ta signature pour comprendre
J'ai la drôle d'impression qu'on n'est ni lu, ni compris, ni remercié sur ce forum si on n'est ni admin, ni modo, ni ViPHP Very Happy Prouvez-moi que je me trompe...
Sauf que ça ne marche que pour lu ... :roll:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 5924 Messages

23 août 2007, 23:37

C'est surtout vrai pour les modos car les admins n'écrivent pas donc ne peuvent être lus :mrgreen:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

23 août 2007, 23:50

NAAAAAAAAAN, amis admin, ne bannissez pas Sekiltoyai :afraid:

:langue:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 5924 Messages

24 août 2007, 01:44

NAAAAAAAAAN, amis admin, ne bannissez pas Sekiltoyai :afraid:

:langue:
Ce ne serait plus de la susceptibilité là, ce serait de l'aveuglement :mrgreen:
Je n'arrange guerre mon compte :P

bazura1
Invité n'ayant pas de compte PHPfrance

24 août 2007, 09:14

Donc pour toi 1&1 est l'un des meilleurs hebergeurs concernant la memory_limit?