Florian - 2003-09-06

Bei mir war es der Fall, das ein zu gross Upgeloadetes Detailbild die komplette Tabellenansicht verzerrt hat, und sehr unschn ausgesehen hat.

Ich habe hier ein kleinen Zusatz fr die Detail.php geschrieben, der die Bildausmasse feststellt, und bei einem zu grossen Bild verkleinert. Es werden zur verkleinerung die width und height Attribute im img-Tag verwendet. Die Dateigrsse ansich bleibt also gleich! Vielleicht findet Ihr das ja hilfreich, deshalb mchte ich es nicht vorenthalten. Das ganze kann auch fr die show_item_* und das Thumbnailbild verwendet werden, dazu einfach $item_row[4] verwenden, anstatt $item_row[5]

--- Code fr Detail.php---
// Ausgabe des Detailbildes wenn vorhanden
if (file_exists("images/$item_row[5]")&&($item_row[5]!=""))
{
// Bilddaten feststellen (Detailbild)
        $Bilddaten = getimagesize("images/$item_row[5]");  // Gibt die Bildeigenschaften einer GIF-, JPEG- oder PNG-Datei als Array zurck: $arr[0]= Bildwidth, $arr[1]= Bildhhe, $arr[2]= Bildtyp (gif=1,jpg=2,png=3), $arr[4]= String ("height=xxx width=xxx") zur Verwendung im <img>-Tag
        $breite = $Bilddaten[0];
        $hoehe = $Bilddaten[1];
        $neueBreite = 250;  // Hier wird die maximale Bildbreite festgelegt
        $neueHoehe = intval($hoehe*$neueBreite/$breite);
// Bilddaten vergleichen und ausgeben (Detailbild)
if ($Bilddaten[0] > $neueBreite)  {echo "<img src='images/$item_row[5]' width=\"$neueBreite\" height=\"$neueHoehe\">";}
else                              {echo "<img src='images/$item_row[5]' width=\"$breite\" height=\"$hoehe\">";}
}

// Ausgabe des Vorschaubildes falls kein Detailbild vorhanden ist
elseif (file_exists("images/$item_row[4]")&&($item_row[4]!=""))
{
// Bilddaten feststellen (Thumbnail)
        $th_Bilddaten = getimagesize("images/$item_row[4]");  // Gibt die Bildeigenschaften einer GIF-, JPEG- oder PNG-Datei als Array zurck: $arr[0]= Bildwidth, $arr[1]= Bildhhe, $arr[2]= Bildtyp (gif=1,jpg=2,png=3), $arr[4]= String ("height=xxx width=xxx") zur Verwendung im <img>-Tag
        $th_breite = $th_Bilddaten[0];
        $th_hoehe = $th_Bilddaten[1];
        $th_neueBreite = 150;  // Hier wird die maximale Bildbreite festgelegt
        $th_neueHoehe = intval($th_hoehe*$th_neueBreite/$th_breite);
// Bilddaten vergleichen und ausgeben (Thumbnail)
if ($th_Bilddaten[0] > $th_neueBreite)  {echo "<img src='images/$item_row[4]' width=\"$th_neueBreite\" height=\"$th_neueHoehe\" hspace=\"3\">";}
else                                    {echo "<img src='images/$item_row[4]' width=\"$th_breite\" height=\"$th_hoehe\" hspace=\"3\">";}
}