Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1486 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [php] Générer petit image a partir d'une grande

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[php] Générer petit image a partir d'une grande

n°334961
rainckill
Posté le 17-03-2003 à 11:08:53  profilanswer
 

Bonjours,
 
alors voila, j'aimerai savoir comment vous faites vous pour faire vos albums d'images Je voudrais qu'il y ai un index avec la vue des photo "petite", puis o click qu'elle s'grandisse. J'arrive facilement a le faire, mais un probleme d'optimisation se hurte à moi. En effet, j'utilise la meme image que l'affichage soit grand (800*600) ou petit (160*120), et laffichage des images petites est en conséquent lent.  
 
J'aimerai savoir comment vous vous y prenez vous, car l'album contiendrai une foule dimage, donc, faire une image petite pour chaque ilage, ce sera lourd :/ d'autant plus que j'utilise un systeme d'upload d'images.
 
Enfait, comme le systeme hak du phpbb : http://www.graphikstar.com/site/wo [...] p?cat_id=8 c'est, il me semble, la meme image grande ou eptite, or, l'affichag des eptites images estr apide ! commetn cela se fait t'il ?
 
Merci  :hello:


Message édité par rainckill le 17-03-2003 à 20:11:01
mood
Publicité
Posté le 17-03-2003 à 11:08:53  profilanswer
 

n°334972
Hermes le ​Messager
Breton Quiétiste
Posté le 17-03-2003 à 11:11:44  profilanswer
 

rainckill a écrit :

Bonjours,
 
alors voila, j'aimerai savoir comment vous faites vous pour faire vos albums d'images Je voudrais qu'il y ai un index avec la vue des photo "petite", puis o click qu'elle s'grandisse. J'arrive facilement a le faire, mais un probleme d'optimisation se hurte à moi. En effet, j'utilise la meme image que l'affichage soit grand (800*600) ou petit (160*120), et laffichage des images petites est en conséquent lent.  
 
J'aimerai savoir comment vous vous y prenez vous, car l'album contiendrai une foule dimage, donc, faire une image petite pour chaque ilage, ce sera lourd :/ d'autant plus que j'utilise un systeme d'upload d'images.
 
Enfait, comme le systeme hak du phpbb : http://www.graphikstar.com/site/wo [...] p?cat_id=8 c'est, il me semble, la meme image grande ou eptite, or, l'affichag des eptites images estr apide ! commetn cela se fait t'il ?
 
Merci  :hello:  


 
2 possibilités :
 
1) tu crées les petites vignettes avec un log d'image (ya des scripts qui permettent d'automatiser la tâche).
 
2) PHP : tu génères automatiquement une vignette à partir de la grande image, et c'est cette vignette qui sera sollicitée.

n°335784
rainckill
Posté le 17-03-2003 à 20:10:18  profilanswer
 

Hermes le Messager a écrit :


2) PHP : tu génères automatiquement une vignette à partir de la grande image, et c'est cette vignette qui sera sollicitée.


 
Je m'imaginer aussi un tel systeme, mais comment le réalisé ? A partir de l'upload de l'image 800*600, php peut créer (et uploader dc) une meme image mais de taille différente ? Comment ?
 
Merci :)

n°335793
Hermes le ​Messager
Breton Quiétiste
Posté le 17-03-2003 à 20:27:31  profilanswer
 

rainckill a écrit :


 
Je m'imaginer aussi un tel systeme, mais comment le réalisé ? A partir de l'upload de l'image 800*600, php peut créer (et uploader dc) une meme image mais de taille différente ? Comment ?
 
Merci :)


 
 :cry:  :cry:  SVP, écris mieux... C'est fatiguant à force, et ça te jouera des tours dans ta vie prof.
 
Bon, pour en revenir à ton problème :
 
PHP peut créer des images à partir d'images uploadées (ou non). Il convient pour cela d'utiliser des fonctions de la librairie GD qui est automatiquement présente avec les versions 4+ de PHP.
 
Tu dois consulter le manuel de PHP (en .chm, le plus pratique, dispo sur php.net en français) et tapper dans "rechercher" : "images". Tout y est parfaitement expliqué avec exemples de codes à l'appui.
 
Voilà ;)

n°336576
rainckill
Posté le 18-03-2003 à 18:29:53  profilanswer
 

Excuse moi pour ces fautes ;) ça arrive au meilleur d'entre nous  :sol:  :whistle:
 
Bon, en suivant tes conseils et en effectuant donc cette recherche, j'ai trouvé ce code, exactement ce qu'il me fallait  :p
 

Code :
  1. <?
  2. function SafComMakeThumbnails($filename, $filetype, $filepaths, $filepatht, $filewidth, $filehight, $smallstart)
  3. {
  4. $filename = $filename; // file name on source path
  5. $filetype = $filetype; // file type (gif or jpg in mime format like image/gif or image/pjpeg)
  6. $filepaths = $filepaths; //source :: /usr/home/www/images/visitorcards
  7. $filepatht = $filepatht; //target :: /usr/home/www/images/visitorcards
  8. $filewidth = $filewidth; // resize image width
  9. $filehight = $filehight; // resize image hight
  10. $smallstart = $smallstart; // Small Image start with
  11. if ($filetype =="image/pjpeg" )
  12. {
  13. $src_img = imagecreatefromjpeg($filepaths . "/" .$filename);
  14. $dst_img = imagecreate($filewidth,$filewidth);
  15. imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $filewidth, $filewidth, imagesx($src_img), imagesy($src_img));
  16. imagejpeg($dst_img, "$filepatht/$smallstart$filename" );
  17. }
  18. else
  19. {
  20. $src_img = imagecreatefrompng($filepaths."/".$filename);
  21. $dst_img = imagecreate($filewidth,$filewidth);
  22. imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $filewidth, $filewidth, imagesx($src_img), imagesy($src_img));
  23. imagepng($dst_img, "$filepatht/$smallstart$filename" );
  24. }
  25. }
  26. ?>


 
Par contre, je ne vois pas trop comment l'utiliser  :sweat: C'est sous la forme d'une fonction, il faut donc faire appel à cette fonction à un moment donné ? Mais comment ?
 
Merci  :hello:

n°336587
Hermes le ​Messager
Breton Quiétiste
Posté le 18-03-2003 à 19:00:11  profilanswer
 

Tu dois apprendre PHP, il faut en passer par là, pas d'autres choix.
 
Saches que pour appeler une fonction, on fait :
 
nom_de_la_fonction(paramètre1, paramètre2, etc...);
 
Tout simplement. Mais ce n'est pas à moi de t'apprendre le php. Il y a des sites très bien faits pour ça : phpdebutant.org par exemple. ;)

n°336684
weed
Posté le 18-03-2003 à 21:33:16  profilanswer
 

http://www.php.net/ pour chercher a koi correspond les fonctions ...

n°336690
Hermes le ​Messager
Breton Quiétiste
Posté le 18-03-2003 à 21:37:29  profilanswer
 

weed a écrit :

http://www.php.net/ pour chercher a koi correspond les fonctions ...


 
C plus la peine, il a télécharger le fichier .chm qui est en fait le contenu de l'index de toutes les fonctions PHP + des exemples de code justement sur php.net ;)

n°337127
rainckill
Posté le 19-03-2003 à 12:07:12  profilanswer
 

oki merci :)
 
bon, par contre, je rencontre ces erreurs :( :

Code :
  1. Warning: imagecreatefromjpeg(/14.jpg) [function.imagecreatefromjpeg]: failed to create stream: No such file or directory in /home/graphiks/www/site/wow/img_ajout00.php on line 20
  2. Warning: imagecopyresized(): supplied argument is not a valid Image resource in /home/graphiks/www/site/wow/img_ajout00.php on line 22
  3. Warning: imagejpeg() [function.imagejpeg]: Unable to open '/14.jpg' for writing in /home/graphiks/www/site/wow/img_ajout00.php on line 23


 
ceci en appellant la fonction citée plus haut par  

Code :
  1. mini($nomimg, $img_type, $filepaths, $filepatht, 160, 120, $smallstart)


sachant que le nom de l'image uploadée est renommée $nomimg mais le champ est $img (d'ou $img_type)
 
Quelqu'un peut m'aider ? :(
 
dsl

n°337128
beleg
黑社會
Posté le 19-03-2003 à 12:08:50  profilanswer
 

c evident ... c marqué  
/14.jpg nest pas un fichier !!!

mood
Publicité
Posté le 19-03-2003 à 12:08:50  profilanswer
 

n°337137
rainckill
Posté le 19-03-2003 à 12:15:49  profilanswer
 

pourtant c bien l'image (800*600) que j'uplaode  :heink:

n°337157
Hermes le ​Messager
Breton Quiétiste
Posté le 19-03-2003 à 12:41:28  profilanswer
 

rainckill a écrit :

pourtant c bien l'image (800*600) que j'uplaode  :heink:  


 
Tu dois avoir un problème de chemin dans tes fichiers, ou des chmods mal rêglés.
 
Mais de toutes manières, tu mets la charue avant les boeufs coco... Avant d'apprendre à utiliser ce genre de fonction, commences déjà par assimiler les bases. C'est l'affaire de 2 semaines à un moins de boulot, mais sans ça, tu posteras des messages ici toutes les dix minutes.  
On peut pas étudier à ta place.
 
 :hello:

n°337165
weed
Posté le 19-03-2003 à 12:48:10  profilanswer
 

bahh le pb c qu'il veut juste utiliser 2-3 fonctions php  
 
dont il a besoin  
 
ms ehhhh malheuresement les bases st obligatoires

n°337166
Hermes le ​Messager
Breton Quiétiste
Posté le 19-03-2003 à 12:49:15  profilanswer
 

weed a écrit :

bahh le pb c qu'il veut juste utiliser 2-3 fonctions php  
 
dont il a besoin  
 
ms ehhhh malheuresement les bases st obligatoires  


 
jusqu'à la prochaine fois où il verra que là encore c plus pratique d'utiliser le PHP. Je connais ce genre de logique, c'est sans fin...

n°337220
rainckill
Posté le 19-03-2003 à 14:06:35  profilanswer
 

euh ca va vous paraitre bizarre que je dise ca, mais els bases, je les ai deja :p
 
mais elle ne m'aide aps a résoudre les erreurs rencontrées :/


Message édité par rainckill le 19-03-2003 à 14:15:58
n°337225
Hermes le ​Messager
Breton Quiétiste
Posté le 19-03-2003 à 14:08:49  profilanswer
 

rainckill a écrit :

euh ca va vous paraitre bizarre que je dise ca, mais els bases, je 'lai ai deja :p


 
Ben quand on sait pas comment employer une fonction, je me dis que certains chapitres ont été "sautés", moi. ;)
 
Normalement, quelqu'un qui fait tous les tutos de phpdebutant.org jusqu'au bout en les ayant parfaitement compris, n'a pas le genre de problème que tu rencontres.
 
Savoir faire un écho ou un if n'est pas suffisant. Il faut aussi se pencher sur les fonctions etc...

n°337228
DrWatson
_@''
Posté le 19-03-2003 à 14:11:35  profilanswer
 

[:drapo]

n°337235
rainckill
Posté le 19-03-2003 à 14:17:25  profilanswer
 

Hermes le Messager a écrit :


 
Ben quand on sait pas comment employer une fonction, je me dis que certains chapitres ont été "sautés", moi. ;)
 
Normalement, quelqu'un qui fait tous les tutos de phpdebutant.org jusqu'au bout en les ayant parfaitement compris, n'a pas le genre de problème que tu rencontres.
 
Savoir faire un écho ou un if n'est pas suffisant. Il faut aussi se pencher sur les fonctions etc...


 
oui, j'ai vu les exo de phpdébutant il y a longtemps ;) aucun n'avait été sauté, nonon, mais ca fait qd meme longtemps, et j'avais oublié ce dont je me sers quasi jamais en php, els foncions

n°337237
rainckill
Posté le 19-03-2003 à 14:19:34  profilanswer
 


pas compris  :heink:

n°337240
DrWatson
_@''
Posté le 19-03-2003 à 14:21:50  profilanswer
 

rainckill a écrit :


pas compris  :heink:  


 
t dois pas bcp connaître le forum toi...
 
le drapeau c'est pour marqué un topic qui nous interesse (et ainsi le retourver plus vite) ça revient au même que de poster n'importe quel message mais c'est plus explicite, là j'avais rien à dire mais je voulais pas perdre le topic, voilà  :na:

n°337244
DrWatson
_@''
Posté le 19-03-2003 à 14:26:27  profilanswer
 

Terrible Hermes, merci pour le truc du manuel en chm à télécharger, y'a tout  :love:  
 
 :)

n°337255
rainckill
Posté le 19-03-2003 à 14:39:07  profilanswer
 

DrWatson a écrit :


 
t dois pas bcp connaître le forum toi...
 
le drapeau c'est pour marqué un topic qui nous interesse (et ainsi le retourver plus vite) ça revient au même que de poster n'importe quel message mais c'est plus explicite, là j'avais rien à dire mais je voulais pas perdre le topic, voilà  :na:  


 
ah oki ^^
 
(je connaissais le drapo, mais j'avais pas compris pq tu le posté ici ;))

n°340520
rainckill
Posté le 22-03-2003 à 20:57:12  profilanswer
 

rainckill a écrit :

oki merci :)
 
bon, par contre, je rencontre ces erreurs :( :

Code :
  1. Warning: imagecreatefromjpeg(/14.jpg) [function.imagecreatefromjpeg]: failed to create stream: No such file or directory in /home/graphiks/www/site/wow/img_ajout00.php on line 20
  2. Warning: imagecopyresized(): supplied argument is not a valid Image resource in /home/graphiks/www/site/wow/img_ajout00.php on line 22
  3. Warning: imagejpeg() [function.imagejpeg]: Unable to open '/14.jpg' for writing in /home/graphiks/www/site/wow/img_ajout00.php on line 23


 
ceci en appellant la fonction citée plus haut par  

Code :
  1. mini($nomimg, $img_type, $filepaths, $filepatht, 160, 120, $smallstart)


sachant que le nom de l'image uploadée est renommée $nomimg mais le champ est $img (d'ou $img_type)
 
Quelqu'un peut m'aider ? :(
 
dsl


 
Personne pour m'aider ? :(

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [php] Générer petit image a partir d'une grande

 

Sujets relatifs
MySQL à partir d'un prog en C??Impossible de lire une image
[.bat] Petit programme tout simple (effacer fichiers) ?petit probleme de memoire!!!
[XML/JS] Generation de XML à partir de la DTD[SQL] Image binaire et Blob.
Faire apparaitre une petite main sur une image (g oublié)generer du flash dynamiquement ??
Recherche de l'arrière petit fils 
Plus de sujets relatifs à : [php] Générer petit image a partir d'une grande


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR