Problème d'upload d'image
Bonjour à tous,
Voila je viens de faire un formulaire qui me permet d'envoyer une image sur le serveur, et je redimensionne cet image pour en faire une miniature,
or j'ai un petit problème effectivement l'image va bien sur le serveur , ce redimensionne sauf que pour que ca marche il faut qu'elle est un nom du style xxx..jpg 8O, sinon je tombe sur la page de internal error de free (erreur 500)
Je trouve ca assez bizzare .. alors que en local n'importe quel image passe, le serveur c'est free.
Et voila le code la plupart du code n'est pas de moi je l'ai trouver sur le net et un peu modifier pour en faire ce dont j'avai besoin :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| if(isset($_FILES['image']['name'])){
$fichier_temp = $_FILES['image']['tmp_name'];
$image = $_FILES['image']['name'];
$nom_fichier = $_FILES['image']['name'];
$taille_max = 150;
// dossier de destination
$fichier_dossier = '../images/ocas/';
// on défini les dimensions et le type du fichier
list($fichier_larg, $fichier_haut, $fichier_type, $fichier_attr)=getimagesize($fichier_temp);
// si le fichier est plus grand que $taille_max on le miniaturise
if (($fichier_larg > $taille_max) || ($fichier_haut > $taille_max)) {
// définition des dimensions
if ($fichier_haut > $fichier_larg){
$mini_haut = $taille_max;
$mini_larg = $fichier_larg / ($fichier_haut / $taille_max);
}
//si plus large que haut
else {
$mini_haut = $fichier_haut / ($fichier_larg / $taille_max);
$mini_larg = $taille_max;
}
// si le fichier est un .jpg / .jpeg
if ($fichier_type===2){
// définition de la qualité
$qualite=80;
move_uploaded_file($fichier_temp, $fichier_dossier.$nom_fichier);
chmod ($fichier_dossier.$nom_fichier, 0777);
// definition de l'image dont on va faire une miniature
$fichier_source = imagecreatefromjpeg($fichier_dossier.$nom_fichier);
// on prépare le fichier miniature qui accueillera l'image réduite
$fichier_reduit = imagecreatetruecolor($mini_larg, $mini_haut);
// dimensions x et y à donner au fichier
$fichier_larg_red = imagesx($fichier_reduit);
$fichier_haut_red = imagesy($fichier_reduit);
// on redimensionne l'image de base dans le fichier $fichier_reduit
imagecopyresampled($fichier_reduit, $fichier_source, 0, 0, 0, 0, $fichier_larg_red, $fichier_haut_red, $fichier_larg, $fichier_haut);
// crée le fichier réduit définitif
imagejpeg($fichier_reduit, $fichier_dossier.$nom_fichier, $qualite);
}
}
} |
Si quelqu'un a une idée je suis preneur