Dynamisch plaatjes resizen met PHP3

Pagina: 1
Acties:
  • 107 views sinds 30-01-2008

  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 27-08 13:35

IWriteCode

Less = more

Topicstarter
Hallo,

Ik vroeg mij af of het mogelijk is om plaatjes met PHP3 te resizen...
Het streven is om al mn foto's in een database [MySQL] te gooien en dan automatisch pagina's te laten gegeneren met thumbnails.
Deze thumbnails worden dan dynamisch gemaakt mbv PHP3 code...
Heeft iemand dit wel eens gedaan of iemand zien doen?

Less = more


  • [FrEEzEr]
  • Registratie: April 2000
  • Laatst online: 29-10-2025
Je moet dan gewoon ff naar de database connecten dan de result in een array gooien en dan door een loop elke keer dit uitpoepen:
code:
1
[img]\"$plaatje_uit_db\"[/img]

Of bedoel je dit niet?!?!?!?!

iMac i7, 8GB | MacMini (2,0-GHz/4GB) | Playstation3 | Wii | Panasonic 42pz85


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

^[fr...]^: Dat is niet handig dan ga je compleet het nut van Thumbnails voorbij. Dan krijg je thumbnails. Die net zo groot (kb) zijn als het orgineel en dus traag zijn met laden.

Jamal: Er zijn diverse kant-en-klare scripts te krijgen. Maar als je het zelf wil schrijvern(wel zo leuk, ook al bestaat het wiel al). Dan is het niet handig om het in een database te zetten. aangezien dat erg traag is en belastend voor de server. Je kan beter een link maken naar de Thumbnail en naar de orgineel.

Verder kan je bv. na het uploaden een admin script draaien die automatisch een complete directory. En van elk plaatje in die directory een thumbnail maakt en dan de nodige gegevens in de database plaatst. Hoe je dat doet hangt helemaal af van jouw server.

Programmer - an organism that turns coffee into software.


  • IWriteCode
  • Registratie: Juli 2000
  • Laatst online: 27-08 13:35

IWriteCode

Less = more

Topicstarter
Thanx!
Verder kan je bv. na het uploaden een admin script draaien die automatisch een complete directory. En van elk plaatje in die directory een thumbnail maakt en dan de nodige gegevens in de database plaatst. Hoe je dat doet hangt helemaal af van jouw server.
De server die ik wil gebruiken is MySQL...
Enig idee waar ik scriptjes kan vinden die zoiets voor me regelen?

Less = more


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
http://www.koehntopp.de/php/

dit is een hele goeie site met faq over php, echter in het Duits. De benodigde scripts vind je hier:

http://www.phpwelt.de/tutorials/thumbsfunc.php3?ug=1

Everyone complains of his memory, no one of his judgement.


  • me1299
  • Registratie: Maart 2000
  • Laatst online: 19:10

me1299

$ondertitel

via commandline kan je een mooi linux cmdline photoshop achtig proggie runnen die zulke jobs voor je doet.

Succes

Het maakt eigenlijk niet uit wat je bewuste geest doet, omdat je onderbewuste automatisch precies dat doet wat het moet doen


Verwijderd

Tip: http://www.php.net/manual/nl/function.imagecopyresized.php (Kijk eens bij de User Contributed Notes onderaan.)

  • RdeTuinman
  • Registratie: Mei 2001
  • Laatst online: 16-08 07:25
Kijk wel ff of de versie van php het maken van plaatjes ondersteund. Dit kan met phpinfo()
code:
1
2
3
<?
phpinfo();
?>

onder het kopje GD staat dan of er gif/jpg/png support is.

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 15:04

Pelle

🚴‍♂️

Hier zijn in P&W ontzettend veel topics over geweest; ik kan me deze nog herinneren: [topic=160653/1/25]. Zoek maar eens naar usericon hier op GoT en dan kom je een hele hoop postings tegen die gaan over PHP met GD-lib.

Volgens mij heeft drm ook een keer zoiets gedaan, maar het lijkt erop dat die thread verloren is gegaan bij BC3.

Verwijderd

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
function resize_image($image_loc,$dest_image_loc,$dest_image_height=0,$dest_image_width=0,$image_quality=100)
    {
    $image_src = ImageCreateFromJPEG($image_loc);    
    $image_width = ImageSX($image_src);    
    $image_height = ImageSY($image_src);
    $ratio = (float)($image_height / $image_width);
    
    if ($dest_image_height==0) {$dest_image_height = $dest_image_width * $ratio;} 
    elseif ($dest_image_width==0) { $dest_image_width = $dest_image_height / $ratio;  }
    
    $dest_image = ImageCreateTrueColor($dest_image_width,$dest_image_height);    
    ImageCopyResampled($dest_image, $image_src, 0, 0, 0, 0, $dest_image_width, $dest_image_height, $image_width, $image_height);    
    ImageJPEG($dest_image,$dest_image_loc,$image_quality);    
    ImageDestroy($image_src);    
    ImageDestroy($dest_image);
    }
?>

Werkt perfect! Je hebt alleen GD nodig.

  • winand
  • Registratie: April 2000
  • Laatst online: 13-09 21:54
ff onder ons, wat is GD :?

  • OzBoz
  • Registratie: Maart 2000
  • Laatst online: 09-09 19:36

OzBoz

.:.H.:.I.:.P.:.

Geen topics van een jaar oud omhoog schoppen als het niet nodig is, verder hebben we daar al tijden P&W voor.

My Fizion | My 3D prints | LinkedIn

Pagina: 1

Dit topic is gesloten.