usa-reise.de Forum

Allgemeines => Technik => Software und Apps, Internet, Websites => Thema gestartet von: Scooby Doo am 02.03.2004, 13:58 Uhr

Titel: Bildgröße in PHP?
Beitrag von: Scooby Doo am 02.03.2004, 13:58 Uhr
Hallo,

gibt es eigentlich eine Funktion in PHP, mit der man die Breite und Höhe eines Bildes bestimmen kann?

Zweck der Übung: In einer Datenbank werden eine Reihe von Bilder abgelegt (bild1.gif bild2.gif), man hat aber keine Ahnung, ob die hochkant oder quer sind. Bedingung ist aber, die längere Seite soll später 200 Pixel lang sein.
Wenn ich nun wüßte, wie breit / hoch ein Bild ist, könnte ich die längere Seite herausfinden und dann entsprechende Attribute height bzw. width setzen.
Titel: Re: Bildgröße in PHP?
Beitrag von: Anonymous am 02.03.2004, 15:13 Uhr
Sowas evtl:

http://www.clemens-gruber.de/computer/goodies/fotosession/
Titel: Re: Bildgröße in PHP?
Beitrag von: Andre am 02.03.2004, 15:27 Uhr
Ich habe mir das Anliegen ein paar Mal durchgelesen und trotzdem nicht verstanden.
Egal, zur Frage: PHP ist als Schnittstelle zwischen HTML Dokumenten und webbasiertem Datenbankeinsatz zu verstehen. Da PHP HTML versteht, wird in PHP auf Neuerfindung des Rades verzichtet. Soll heissen, du verwendest ganz einfaches HTML in deiner PHP-Seite.
Titel: Re: Bildgröße in PHP?
Beitrag von: Anonymous am 02.03.2004, 15:33 Uhr
Ganz einfach. Er hat z.B. ein Bild mit 200*100 Pixeln oder 200*200 Pixeln das er mit onclick() in einem Fenster öffnen will.  Problem ist, wenn er das aus der Datenbank holt muß er eine feste größe für das sich öffnende Fenster angeben.
Nachteil: entweder ist diese Fenster zu klein und man muß scrollen oder es ist zu groß und rechts/links/oben/unten ist zuviel Platz. Liest man die größe vorher aus, kann man mittels Script ein maßgeschneidertes Fenster öffnen.
Titel: Re: Bildgröße in PHP?
Beitrag von: Scooby Doo am 02.03.2004, 15:36 Uhr
@Gast
danke, hat mich schon auf die richtige Idee gebracht, wie ich mein Problem löse. (GetImageSize)

@Andre
Das Problem ist, um es noch einmal kurz zu erläutern, die Seite, die die Bilder anzeigen soll, bekommt nicht immer dieselben Bilder, sondern aus einer Datenbank - ist also dynamisch.
HTML nimmt zwar die Formatierung vor, kann aber nicht die Größe von Bildern ermitteln, d.h. hinter width bzw height muss ich persönlich die konkrete Zahl eingeben oder von PHP ausgeben lassen.
Nur woher bekommt PHP die Informationen?
Titel: Re: Bildgröße in PHP?
Beitrag von: Andre am 03.03.2004, 03:41 Uhr
Dann solltest du neben dem Pic auch die Info zu den Bildabmessungen in der Datenbank speichern und diese mit einer GET-Anfrage rausziehen und spaeter mit imagecreate( $breite, $hoehe) ausgeben.
Titel: Re: Bildgröße in PHP?
Beitrag von: Scooby Doo am 03.03.2004, 09:14 Uhr
@Andre
und genau das versuche ich zu vermeiden.
Warum sollte ich diese Informationen mit in die Datenbank aufnehmen, wenn sich eine Funktion findet, die Breite und Höhe von einem Bild berechnen kann.
Titel: Re: Bildgröße in PHP?
Beitrag von: Scooby Doo am 03.03.2004, 09:57 Uhr
Habe gerade ein wenig mit der Funktion getimagesize herumexperimentiert.
Scheint zu funktionieren.
Kann mir also ersparen, die Breite und Höhe mit in der Datenbank abzuspeichern.

Da ich nun wusste, nach welchen Befehl ich ausschhauen musste, habe ich mich im Internet noch weiter informiert und folgendes gefunden, wer mir nacheifern will:

Zitat

Beschreibung:
Dieser Befehl liest die Bildgröße von GIF, JPG und PNG-Dateien aus und gibt sie in einem Array zurück. Dieser Befehl benötigt nicht die GD-Bibliothek!
Folgende Elemente befinden sich in dem Array:

0. Breite
1. Höhe
2. Typ: 1=GIF, 2=JPEG, 3=PNG
3. Größenangaben im IMG-Tag (z.B. 'width="111" height="24"')


Beispiel:
$imgsize = getimagesize("img/logo.gif");

if($imgsize[2] == 1) {
  echo "Ein GIF!!!";
} elseif($imgsize[2] == 2) {
  echo "Ein JPEG!!!";
} elseif($imgsize[2] == 3) {
  echo "Ein PNG!!!";
}