Accueil > Forum > > > > upload d'img avec resize
upload d'img avec resize
mercredi 2 juin 2004 à 13:54:36 |
upload d'img avec resize

switsh
|
Salut tlm ! J'essais d'uper des img en creant une version reduite de celle ci mais ca marche pas trop. Je suis plutot débutant niveau php et on ma passé se script que je n'arrive pas a faire fonctionner si qqn peut m'aider ce serait cool ^^ //le fichier html: sélectionnez l'image <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX FILE" value="100000"> <input type="file" name="userfile" value=""> <br> <input type="submit" value="Envoyer"> </form> //le fichier php: <html> <head> <title>Upload</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head>
<body bgcolor="#FFFFFF"> <?php //repertoire d'arrivé des images $uploaddir = 'images/'; //taille max $tailleMax=1000000;
if($_FILES['userfile']['size']>$tailleMax){ $depasse=$_FILES['userfile']['size']-$tailleMax; $poidKo=$_FILES['userfile']['size']/1024; $tailleM=$tailleMax/1024;
print "Le fichier est trop lourd, veuillez ne pas dépasser ".round($tailleM,0)." Ko :\n Votre fichier pèse ".round($poidKo,0)." Ko et dépasse la limite de ".$depasse." octets "; } else{ if($_FILES['userfile']['type']=="image/jpeg"||$_FILES['userfile']['type']=="image/pjpeg"||$_FILES['userfile']['type']=="image/jpg"||$_FILES['userfile']['type']=="image/gif"||$_FILES['userfile']['type']=="image/png"){ $name=$_FILES['userfile']['tmp_name']; list($width, $height, $type, $attr)=getimagesize("$name"); print "\n\n La taille de l'image est ".$width." * ".$height."\n";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) { print "Le fichier est valide, et a été téléchargé avec succès.\n\n"; //redimension de l'image uploadé $taille=200; // longueur souhaité pour l'image $qualite=100; // qualite du jpeg $chaine=$_FILES['userfile']['name']; $facteur=$width/$taille; $l=round($width/$facteur,0); $h=round($height/$facteur,0); if($_FILES['userfile']['type']=="image/jpeg"||$_FILES['userfile']['type']=="image/pjpeg"||$_FILES['userfile']['type']=="image/jpg"){ $src = imagecreatefromjpeg($uploaddir . $_FILES['userfile'] ['name']);//cree une instance de l'image DL $im = @ImageCreateTrueColor ($l, $h) or die ("Erreur lors de la création de l'image");//cree une image vide en vraie couleur de la taille de la miniature ImageCopyResampled($im,$src, 0, 0, 0, 0, $l,$h, $width, $height);// ImageString ($im, 5, 2, 2, $chaine,imagecolorallocate($im, 0, 0, 240) );//ecri le nom de l'image(image,police,x,y,couleur)
imagejpeg($im, "imagesmini/".$_FILES['userfile'] ['name'],$qualite);//ecrit sur le disque (imagesource,detination, qualité) }
if($_FILES['userfile']['type']=="image/gif"){ $src = imagecreatefromgif($uploaddir . $_FILES['userfile'] ['name']);//cree une instance de l'image DL $im = @ImageCreateTrueColor ($l, $h) or die ("Erreur lors de la création de l'image");//cree une image vide en vraie couleur de la taille de la miniature ImageCopyResampled($im,$src, 0, 0, 0, 0, $l,$h, $width, $height); // ImageString ($im, 5, 2, 2, $chaine,imagecolorallocate($im, 0, 0, 240) )//ecri le nom de l'image(image,police,x,y,couleur)
imagepng($im, "imagesmini/".$_FILES['userfile'] ['name'],$qualite);//ecrit sur le disque (imagesource,detination, qualité) } if($_FILES['userfile']['type']=="image/png"){ $src = imagecreatefrompng($uploaddir . $_FILES['userfile'] ['name']);//cree une instance de l'image DL $im = @ImageCreateTrueColor ($l, $h) or die ("Erreur lors de la création de l'image");//cree une image vide en vraie couleur de la taille de la miniature ImageCopyResampled($im,$src, 0, 0, 0, 0, $l,$h, $width, $height); // ImageString ($im, 5, 2, 2, $chaine,imagecolorallocate($im, 0, 0, 240) );//ecri le nom de l'image(image,police,x,y,couleur)
imagepng($im, "imagesmini/".$_FILES['userfile'] ['name']);//ecrit sur le disque (imagesource,detination, qualité) } print "Pour être en conformité avec le site il à été redimensionné à la taille $l * $h\n\n";
} else { echo "Attaque par upload potentielle. Voici plus d'informations :\n"; print_r($_FILES); } }else{ print "Le fichier n'est pas de type jpeg,png ou gif mais de type ".$_FILES['userfile']['type']; } }
//liberation des resources imagedestroy(); ?> </body> </html>
|
|
|
mercredi 2 juin 2004 à 14:07:26 |
Re : upload d'img avec resize

switsh
|
Si je remplace image/jpg image/png etc ... par images/jpg images/png (je mes des "s" car mon chemin est: $uploaddir = 'images/'; J'ai un probleme avec la fonction imagedestroy(); sirué tout en bas. Je l'ai desactivé pour voir et la je n'ai plus d'eereur il me dit qu'il cré la miniature mais rien. La grande image est uploadé mais pas la petite.
|
|
mercredi 2 juin 2004 à 15:58:56 |
Re : upload d'img avec resize

phpwankenobi
|
Salut,:
Le proto de la fonction :
int imagedestroy ( resource image )
imagedestroy libère toute la mémoire associée à l'image image . image est un identifiant d'image valide retourné par imagecreate .
Donc je pense qu'il faut faire :
imagedestroy($im);
Ceci ne résoud pas ton problème d'upload de la miniature, mais là je ne vois pas pour l'instant...
|
|
jeudi 3 juin 2004 à 06:38:22 |
Re : upload d'img avec resize

phpwankenobi
|
Re-salut, J'ai une piste ! Dans le cas du jpeg, si tu utilises ces deux lignes à la place des tiennes , cela marche !!!! $im = @ImageCreate ($l, $h) or die ("Erreur lors de la création de l'image"); ImageCopyResized($im,$src, 0, 0, 0, 0, $l,$h, $width, $height);//
|
au lieu de ton code: $im = @ImageCreateTrueColor ($l, $h) or die ("Erreur lors de la création de l'image");//cree une image vide en vraie couleur de la taille de la miniature ImageCopyResampled($im,$src, 0, 0, 0, 0, $l,$h, $width, $height);//
|
Mais qu'est-ce que cela veut dire ? Bon sang mais c'est bien sur, c'est le niveau de la librairie GD qui n'est pas adapté à tes instructions .... Tu peux controler le niveau de GD installé avec phpinfo() Ensuite tu vas dans la doc et tu cherches la compatibilité des fonctions utilisées avec le niveau de librairie GD dont tu disposes. Attention en dev et en prod, cela peut ne pas être le même niveau.... Bon courage...
|
|
jeudi 3 juin 2004 à 12:22:37 |
Re : upload d'img avec resize

switsh
|
C cool merci a toi je vais essayer direct merci !!
|
|
Cette discussion est classée dans : type, image, files, im, userfile
Répondre à ce message
Sujets en rapport avec ce message
problème avec les if et les else... [ par sebmayer ]
Bonjour,voila j'ai créé un petit programme pour uploader mes images, mais j'ai un petit problème avec mes vérifications de champs (les else et les if.
Récupérer résolution image? [ par Monico9385 ]
Bonjour à tous, je viens ici car j'ai un soucis, c'est que j'aimerai récupérer la résolution d'une image envoyée à l'aide d'un input type files. Et je
Les fichiers [ par Bumcello ]
Bonjour,Le script suivant sert à uploader des images de types differents. Et donc si je choisis un fichier jpeg cela ne fonctionne pas cela m'affiche
affichage d'un message non desire [ par guisx00 ]
Bonjour, Je suis entrain de me remettre dans le php et je n'arrive plus à faire fonctionne correctement mon code J'avais cree avec des bout de code
Upload ? [ par robapt ]
Bonjour, je fais pour un site en ce moment un code qui demande un mots de passe avant qu'on puisse uploader le fichier qu'on choisit, j'ai les 2 code
problème avec $_FILES [ par nicomilville ]
Salut,J'ai un problème avec un code qui est censé uploader une image et mettre son chemin dans une base de donnée...Je n'ai aucune erreur...Mon code P
correction d'un script upload image [ par smed79 ]
bonjour,j'ai besoin de votre aide pour modifier et corriger un script upload image. j'ai un probleme avec le message d'erreur pour la taille maximum
Pb upload php [ par ninho44 ]
Bonjour, voila j'ai un petit probleme pour uploader une image et c'est la 1ere fois que je fais ça...je suis un peu perdu.EN fait, je ne vois pas pour
insertion image [ par ahlemlo ]
bonjourj'ai un formulaire avec un image à insérer dans la bd dje veux que l'insertion d'image n'est pas obligatoire j'ai comme ça mais ne marche pas
uploader une image [ par ouzb ]
Bonjour j'ai un probleme avec un upload voici mon code n'enregistre pas dans la base de données et le move upload ne marche pas if(isset($_FILES['logo
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|