Frage zu Thumbnail-Script

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/frage_zu_thumbnail-script_30533/page_1 - zur Vollversion wechseln!


pirate man schrieb am 04.04.2002 um 23:18

hier ist der code für ein thumbnail-script:

Code: PHP
  $PicPathIn="../bilder/"; 
  $PicPathOut="../bilder/out/"; 
  // Orginalbild 
  $bild="Foto.jpg"; 
  // Bilddaten feststellen 
  $size=getimagesize("$PicPathIn"."$bild"); 
  $breite=$size[0]; 
  $hoehe=$size[1]; 
  $neueBreite=100; 
  $neueHoehe=intval($hoehe*$neueBreite/$breite); 

  if($size[2]==1) { 
  // GIF 
  $altesBild=ImageCreateFromGIF("$PicPathIn"."$bild"); 
  $neuesBild=ImageCreate($neueBreite,$neueHoehe); 
  ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,
$neueHoehe,$breite,$hoehe); 
  ImageGIF($neuesBild,"$PicPathOut"."TN"."$bild"); 
  } 

  if($size[2]==2) { 
  // JPG 
  $altesBild=ImageCreateFromJPEG("$PicPathIn"."$bild"); 
  $neuesBild=ImageCreate($neueBreite,$neueHoehe); 
  ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,
$neueHoehe,$breite,$hoehe); 
  ImageJPEG($neuesBild,"$PicPathOut"."TN"."$bild"); 
  } 

  if($size[2]==3) { 
  // PNG 
  $altesBild=ImageCreateFromPNG("$PicPathIn"."$bild"); 
  $neuesBild=ImageCreate($neueBreite,$neueHoehe); 
  ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,
$neueHoehe,$breite,$hoehe); 
  ImagePNG($neuesBild,"$PicPathOut"."TN"."$bild"); 
  } 

  echo "Altes Bild: <BR>"; 
  echo "<IMG SRC=\"$PicPathIn$bild\" WIDTH=\"$breite\" HEIGHT=\"$hoehe\">
<BR><BR>"; 
  echo "Neues Bild:<BR>"; 
  $Tumbnail=$PicPathOut."TN".$bild; 
  echo "<IMG SRC=\"$Tumbnail\" WIDTH=\"$neueBreite\" HEIGHT=\"$neueHoehe\">";
aber dieses script ist nur für ein bild, da $bild den wert foto.jpg hat - seh ich das richtig?
wenn ja, wie kann das ändern, damit es für mehr bilder ist?


Vir@s schrieb am 05.04.2002 um 10:16

Hmm einfach in ne for schleife packen wo dann 1 image nach dem anderen abgearbeitet wird:

Code: PHP
$PicPathIn="../bilder/"; 
  $PicPathOut="../bilder/out/"; 
  // Orginalbild 
  $bilder= { "Foto.jpg", "Nocheinfoto.jpg" }; 

foreach ($bilder as $bild) {
  // Bilddaten feststellen 
  $size=getimagesize("$PicPathIn"."$bild"); 
  $breite=$size[0]; 
  $hoehe=$size[1]; 
  $neueBreite=100; 
  $neueHoehe=intval($hoehe*$neueBreite/$breite); 

  if($size[2]==1) { 
  // GIF 
  $altesBild=ImageCreateFromGIF("$PicPathIn"."$bild"); 
  $neuesBild=ImageCreate($neueBreite,$neueHoehe); 
   ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,
$neueHoehe,$breite,$hoehe); 
  ImageGIF($neuesBild,"$PicPathOut"."TN"."$bild"); 
  } 

  if($size[2]==2) { 
  // JPG 
  $altesBild=ImageCreateFromJPEG("$PicPathIn"."$bild"); 
  $neuesBild=ImageCreate($neueBreite,$neueHoehe); 
   ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,
$neueHoehe,$breite,$hoehe); 
  ImageJPEG($neuesBild,"$PicPathOut"."TN"."$bild"); 
  } 

  if($size[2]==3) { 
  // PNG 
  $altesBild=ImageCreateFromPNG("$PicPathIn"."$bild"); 
  $neuesBild=ImageCreate($neueBreite,$neueHoehe); 
   ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,
$neueHoehe,$breite,$hoehe); 
  ImagePNG($neuesBild,"$PicPathOut"."TN"."$bild"); 
  } 

  echo "Altes Bild: <BR>"; 
  echo "<IMG SRC=\"$PicPathIn$bild\" WIDTH=\"$breite\" HEIGHT=\"$hoehe\">
<BR><BR>"; 
  echo "Neues Bild:<BR>"; 
  $Tumbnail=$PicPathOut."TN".$bild; 
  echo "<IMG SRC=\"$Tumbnail\" WIDTH=\"$neueBreite\" HEIGHT=\"$neueHoehe\">";
}

des sollte es eigentlich tun =)


pirate man schrieb am 05.04.2002 um 17:05

foreach? was is denn das für eine schleife?
hab ich noch nie gesehen


Vir@s schrieb am 05.04.2002 um 23:02

Zitat von pirate man
foreach? was is denn das für eine schleife?
hab ich noch nie gesehen

foreach arbeitet jedes Element in einem array ab.

und zwar nach folgendem Syntax:

foreach ($array as $element);

wobei $element immer das aktuelle element ist und für 1 schleifendurchlauf gültig ist.

Foreach erspart viel Arbeit wenn man ein Array abarbeiten will =)

Mfg, Vir@s

http://www.php.net/manual/en/contro...res.foreach.php




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025