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

Fermé
NickoX9 - 3 janv. 2008 à 19:08
absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 - 3 janv. 2008 à 23:13
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 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
3 janv. 2008 à 19:21
slt !
peut etre en mettant ceci dans le formulaire :

<INPUT type=hidden name=MAX_FILE_SIZE VALUE=2048>
0
et ca sert a quoi ca ?
0
absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
3 janv. 2008 à 19:58
limiter la taille justement !!
0
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
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 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
3 janv. 2008 à 23:13
tiens t'ira voir la je pense que c'est ce que tu cherche a faire !!!

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