PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP-Bildergallerien


Oliver_G
2005-09-11, 15:44:45
Hiho,
werde bald _endlich_ auf WS mit PHP-Support umsteigen. :D
Hab schon seit längerem ne Bildergallerie im Web, allerdings das alles mit 'JoJoThumb' gemacht, also HTML-Bildergallerien mit einem Thumbnail und einer HTML-Datei pro Bild-Datei (dazu noch Übersichten-HTMLs etc.).

Wie mache ich das ganze am besten mit PHP? Sollte wie folgt aussehen:

index:
Übersicht über die Einträge von mir. Geht ja auch in HTML... sind ja nur Verlinkungen.

Thumbnail-Übersichten: (von oben nach unten)
Titel + [Seitenlaufnummer / Seitenanzahl]
Navigation: Seite zurück | zurück zur Index-Seite | Seite vor
4x4 Thumbs in 120x90 Pixeln
Navigation: Seite zurück | zurück zur Index-Seite| Seite vor

Bei Klick auf Thumbnail: (von oben nach unten)
Titel + [Bildlaufnummer / Bildanzahl]
Navigation: Seite zurück | zurück zur Thumbnail-Übersicht | Seite vor
Bild in Original-Größe (hier: 640x480)
Navigation: Seite zurück | zurück zur Thumbnail-Übersicht | Seite vor


Welche Scripts wären dafür empfehlenswert?


Gruß



Edit: MySQL auch da!

Fettkopp
2005-09-11, 18:16:32
Hiho,
werde bald _endlich_ auf WS mit PHP-Support umsteigen. :D
Hab schon seit längerem ne Bildergallerie im Web, allerdings das alles mit 'JoJoThumb' gemacht, also HTML-Bildergallerien mit einem Thumbnail und einer HTML-Datei pro Bild-Datei (dazu noch Übersichten-HTMLs etc.).

Wie mache ich das ganze am besten mit PHP? Sollte wie folgt aussehen:

index:
Übersicht über die Einträge von mir. Geht ja auch in HTML... sind ja nur Verlinkungen.

Thumbnail-Übersichten: (von oben nach unten)
Titel + [Seitenlaufnummer / Seitenanzahl]
Navigation: Seite zurück | zurück zur Index-Seite | Seite vor
4x4 Thumbs in 120x90 Pixeln
Navigation: Seite zurück | zurück zur Index-Seite| Seite vor

Bei Klick auf Thumbnail: (von oben nach unten)
Titel + [Bildlaufnummer / Bildanzahl]
Navigation: Seite zurück | zurück zur Thumbnail-Übersicht | Seite vor
Bild in Original-Größe (hier: 640x480)
Navigation: Seite zurück | zurück zur Thumbnail-Übersicht | Seite vor


Welche Scripts wären dafür empfehlenswert?


Gruß



Edit: MySQL auch da!
ich benutze DAlbum und finds recht gut...

beispiel ist auf www.tapi-online.de unter Fotos...

downloaden kann man das ganze auf Dalbum.org
anscheinend ist die seite grade down..
es geht auch http://www.php-free.de/Detailed/1837.html

Oliver_G
2005-09-11, 18:25:07
Sieht ganz gut aus. :)
Wird alles dynamisch bei dem Script erstellt? Muss man nur noch Bilder etc einfügen?

Fettkopp
2005-09-11, 21:04:19
Sieht ganz gut aus. :)
Wird alles dynamisch bei dem Script erstellt? Muss man nur noch Bilder etc einfügen?
Hi ja...
Man läd die Bilder in einen Ordner.
Logt sich im Script ein.
Geht auf "Reindex" und danach kann man noch unter den Optionen bestimmen, welches Thumbnailvorschaubild eine Ordnergallerie erhalten soll.
Läuft ohne MySQL, die Daten werden in dateien gespeichert.

Oliver_G
2005-09-12, 16:49:56
Immernoch down :(

ravage
2005-09-12, 23:07:55
Hrm ganz billig und selbst mal zusammengeschreibselt ;)

galerie.inc.php:
<?php
function liste($verz) {

$verz .=$_GET['uverz']."/";
if(strstr( $verz, ".." )) {
echo "<p>Netter Versuch...</p>";
return 0;
}
$verzeichnis = opendir($verz);

if($_GET['uverz']) {
echo "<h1>".$_GET['uverz'].":</h1>";
$unterv.= "<p style='line-height:15px;font-weight:bold;text-transform:uppercase;'><a style='text-decoration:none;' href=\"javascript:history.back(1);\">. .</a><br>";
} else {
$unterv.= "<p style='line-height:15px;font-weight:bold;text-transform:uppercase;'>";
echo "<h1>Galerie:</h1>";
}

while($eintrag = readdir($verzeichnis)) {
$startpos = strpos($eintrag,".");
$endpos = strlen($eintrag);
$length = $endpos -$startpos;
$string = substr($eintrag, $startpos, $length);

$test = $verz . "/" . $eintrag;
if(is_dir($test)) {
if($eintrag==".." || $eintrag==".") {

} else {
$unterv.="<a style='text-decoration:none;' href=\"bilder.php?uverz=".$_GET['uverz']."/".$eintrag."\">$eintrag</a><br>";
}
} elseif($string == ".jpg" OR $string == ".jpeg" OR $string == ".gif" OR $string == ".png" OR
$string == ".JPG" OR $string == ".JPEG" OR $string == ".GIF" OR $string == ".PNG") {

$bild=$verz.$eintrag;

// Bilddaten feststellen
$size=getimagesize($bild);
$breite=$size[0];
$hoehe=$size[1];

//hier die Breite festlegen
$neueBreite=100;
$neueHoehe=intval($hoehe*$neueBreite/$breite);

$breite += 20;
$hoehe += 20;

$name .="<a style=\"cursor:pointer;\" onclick=\"javascript:window.open('".$verz.$eintrag."', 'Bild', 'width=".$breite.",height=".$hoehe.",left=20,top=20');\">";

$name .= "<img src=\"galerie.inc.php?bild=$verz$eintrag\" style=\"margin:5px;width:".$neueBreite."px;height:".$neueHoehe."px;\" alt=\"$eintrag\"></a>";
}
}
if($unterv) {
$unterv.="</p>";
echo "<br><h2>Verzeichnisse:</h2><br>".$unterv;
}
if($name) {
echo "<br><h2>Bilder:</h2><br>".$name;
}
closedir($verzeichnis);
}

if($_GET['bild']) {
$bild=$_GET['bild'];

// Bilddaten feststellen
$size=getimagesize($bild);
$breite=$size[0];
$hoehe=$size[1];

//hier die Breite festlegen
$neueBreite=100;
$neueHoehe=intval($hoehe*$neueBreite/$breite);

if($size[2]==1) {
// GIF
$altesBild=ImageCreateFromGIF($bild);
$neuesBild=ImageCreate($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$h oehe);
ImageGIF($neuesBild);
}

elseif($size[2]==2) {
// JPG
$altesBild=ImageCreateFromJPEG($bild);
$neuesBild=ImageCreate($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$h oehe);
ImageJPEG($neuesBild);
}

elseif($size[2]==3) {
// PNG
$altesBild=ImageCreateFromPNG($bild);
$neuesBild=ImageCreate($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$h oehe);
ImagePNG($neuesBild);
}
}
?>

Einfügen in deine Homepage:

<?php
include("pfad zur galerie.inc.php");
liste("pfad zum bilderordner");
?>

Beispiel:

<?php
include("./includes/galerie.inc.php");
liste("./pics/");
?>


Tada :)

/dev/NULL
2005-09-13, 11:44:51
ich benutz yapig, das sind ein paar php scripte mit Admin interface und autoimatischer Thumbnail erstellung usw.. benötigt keine Datenbank und ist klein und fein ;-)

Oliver_G
2005-09-13, 17:53:19
Toll, habe heute Mittag Yapig installiert und konfiguriert und bin grad am Bilder hochladen. ...und jetzt geht die DAlbum-Seite wieder :|
Egal, Yapig ist auch gut... :)

Jedenfalls: Da gibts doch irgendwas gesehen, dass Bilder automatisch dreht. Imageirgendwas :| Kann man das noch irgendwie einbinden? Arbeitet das gut?

Gruß

astanoth
2005-09-13, 20:37:19
Ich habe heute http://www.minigal.dk/ gefunden. Nett und klein.

Oliver_G
2005-09-13, 20:55:36
Die Live-Demo funzt nicht :|
Haste vielleicht mal nen Screenshot wie das für Seiten-Besucher aussieht?

Oliver_G
2005-09-13, 21:36:19
@/dev/NULL

Kennst du dich mit dem Anpassen von Yapig aus? Möchte gerne noch nen GB einfügen etc :)

astanoth
2005-09-14, 01:55:26
Die Live-Demo funzt nicht :|
Haste vielleicht mal nen Screenshot wie das für Seiten-Besucher aussieht?

http://www.minigal.dk/addons.php?searchfor=&type=skin&orderby=downloads&direction=DESC&prpage=10

Was genau geht nicht?