Qui veut m'aider en PHP (upload image) ?

NickoX9 -  
absurdsystem Messages postés 118 Statut Membre -
Bonjour,

J'ai un petit soucis... (un soucis, peut etre débile...) qui me fait ch... depuis pas mal de temps...

Voila, je vous explique. Alors, j'ai un formulaire ou la personne remplie des champs tel que nom, prénom, etc mais aussi une photo... et la est le problème... kan j'upload la photo ca plante car elle est trop grosse... donc j'ai tenté de créer la meme image mais en plus petit mais je ne sais pas pourquoi la petite image, plus légère au niveau poids ne passe pas (je dispose d'un FTP Free)

En tout cas, en local, ca marche !

Voici le code :

if($_GET['ordre']=='ajouter')
{
$target = 'photo/'; // Repertoire cible
$nom_file = $_FILES['fichier']['name'];

$extension=strrchr($nom_file,'.'); //PERMET DE RECUPERER L'EXTENSION DU FICHIER

$newfile=date("ymdHis").$extension; //création d'un nouveau nom pour la photo

if(!empty($_FILES['fichier']['name'])) // VERIFICATION REMPLISSAGE CHAMP
{

$nomimage = $_FILES['fichier']['name'];

//on supprime les accents et les espaces du nom de l'image
$nomimage = strtr($nomimage, "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ",
"aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn");
//on supprime les espaces
$nomimage = ereg_replace(" ","_",$nomimage);

$my_img = $_FILES['fichier']['tmp_name'];

$folder = 'photo/'.$nomimage;

$src_im = imagecreatefromjpeg($my_img);
$size = GetImageSize($my_img);
$src_w = $size[0];
$src_h = $size[1];
$dst_w = 629;
$dst_h = round(($dst_w / $src_w) * $src_h);
$dst_im = imagecreatetruecolor($dst_w,$dst_h);
echo "<img src=".$dst_im." WIDTH=100>";
imagecopyresampled($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
if (imagejpeg($dst_im,$folder))
{
imagedestroy($dst_im);
imagedestroy($src_im);

}
else {
imagedestroy($dst_im);
imagedestroy($src_im);

}

}
else
{
echo "<span class=BLANC>Photo par defaut ajoutee !</span>";
// CHAMP VIDE donc ON REMPLACE PAR UNE PHOTO PAR DEFAUT
$target = 'photo/'; // Repertoire cible
$newfile = 'nondispo.jpg'; // Image NONDISPO, PAS DE PHOTO (image deja présente dans le repertoire photo)
}


$size = GetImageSize($target.$newfile); //récupere les dimensions de l'image
$src_w = $size[0];
$src_h = $size[1];
if($src_w >= $src_h) //si la hauteur est plus grande que la largeur
{
$idsize = 1; //mode paysage
}else{ $idsize = 0; } //mode portrait

echo '<center><b>...Enregistré...</b><center>';
$request = "INSERT INTO contacts VALUES( ... )" or die (mysql_error());
mysql_query($request);
}
}
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="fr">
<head>
<title>Contact</title>
</head>
<body bgcolor="#ffffff" vlink="#000000" alink="#000000" link="#000000" textcolor="#FFFFFF">

<form method="post" enctype="multipart/form-data" action="ajout.php?ordre=ajouter">

<input type='hidden' name='posted' value='1'/><br>
<input name='fichier' type='file' size='20' style="font-size:9pt; color:#FFFFFF ; background-color: #000000"><br><br>

<input type="text" value="Envoyer">

</form>
</body>
</html>

Merci

X9
A voir également:

6 réponses

absurdsystem Messages postés 118 Statut Membre 50
 
slt !
peut etre en mettant ceci dans le formulaire :

<INPUT type=hidden name=MAX_FILE_SIZE VALUE=2048>
0
NickoX9
 
et ca sert a quoi ca ?
0
absurdsystem Messages postés 118 Statut Membre 50
 
limiter la taille justement !!
0
NickoX9
 
je ne ve pas limiter la taille, je voudrais pouvoir créer l'image de poids largement inférieur avant de l'upload sur le FTP. Donc a ce moment la ca ne poserais plus de problème (car avec une photo de moins de 900 ko a peu près ca passe comme sur des roulettes !)
Mais je ne comprend pas pourquoi je n'y arrive pas avec le code que j'ai donné au départ...

Merci d'avance a ceux qui m'aideront !

X9
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
le père
 
Bonjour

Ton script ne réduit la taille du fichier qu'après l'upload, comme on te l'avait déjà dit. Il ne resoud rien. Tu es sur une fausse piste. Malheureusement, je n'en ai pas de bonne à te donner, désolé.
0
absurdsystem Messages postés 118 Statut Membre 50
 
tiens t'ira voir la je pense que c'est ce que tu cherche a faire !!!

https://openclassrooms.com/fr/courses
0