URL: https://www.overclockers.at/coding-stuff/php_help_gesucht_200031/page_1 - zur Vollversion wechseln!
Ich baue gerade an meiner Homepage und möchte nun endlich eine wirklich unglaublich simple Gallery einbauen. Auf http://www.markusklug.com - photography - GFX findet ihr ein Beispiel wie das ganze auf der Homepage aussehen soll.
Anforderungen:
Upload in einen Ordner
Selbstständiges skalieren/croppen für Thumbnails
Wenn ein Foto ausgewählt wird, soll der Hintergrund ausgedunkelt werden und das Foto in voller Auflösung angezeigt werden.
Mit Klick aufs Foto legt es sich wieder in den Hintergrund.
Eventuell prev/next unter dem eingeblendeten Foto.
Vielleicht kennt jemand eine solche Gallery (ich finde nur welche mit allen möglichen Zusätzen die ich nicht brauche) bzw. kann sie mir machen. Ein Preisvorschlag wäre natürlich nett.
Wichtig ist mir: Es soll einfach, sicher und flexibel sein.
lightbox schon ausprobiert?
Zitat von Skatanlightbox schon ausprobiert?
Ich stand selber mal vor dem selben Problem, und hab auf die schnelle in Perl das hier verbrochen: http://johannes.truschnigg.info/gallery.cgiscript
Erfuellt all deine Anforderungen, bis auf die Lightbox-JavaScript-Fanciness. Thumbnails werden on-request generiert und gecached, Cache ist durch ein Passwort auch loeschbar; max. Abmessungen sind einstellbar, Cropping geht nicht. Design des HTML-Outputs ist natuerlich anpassbar, wenn's einen freut.
Zitat von COLOSSUSIch stand selber mal vor dem selben Problem, und hab auf die schnelle in Perl das hier verbrochen: http://johannes.truschnigg.info/gallery.cgiscript
Erfuellt all deine Anforderungen, bis auf die Lightbox-JavaScript-Fanciness. Thumbnails werden on-request generiert und gecached, Cache ist durch ein Passwort auch loeschbar; max. Abmessungen sind einstellbar, Cropping geht nicht. Design des HTML-Outputs ist natuerlich anpassbar, wenn's einen freut.
Zitat von LTDThx, das sieht schon gut aus. Hab nur ein paar Fragen:
1. Kann man das Bild überblenden lassen? Also wie in lightbox? Mit Fading? (bzw. kann ich das selbst machen)
2. Kann man die Bilder so croppen lassen, dass sie alle quadratisch sind? (wie auf der Homepage, tut mir leid dass ich das nicht erwähnt habe ;/, die Pics sind natürlich gecropt nicht alle viereckig...)
3. Kann man das << >> in das geöffnete Bild intergrieren anstatt in der Gallery, so dass ich nicht stets das Bild schließen muss, sondern gleich weiterklicken kann. Die Gallery selbst löse ich mit verschiedenen Seiten (1,2,3...)
Wie kann ich mir den Source-Code ansehen und wie binde ich Pearl ein?
Fragen über Fragen =)
Zitat von COLOSSUS1.) Keine Ahnung; ich hab mir Lightbox noch nie angesehen... weisz von daher nicht, wie schwierig das zu integrieren waere.
2.) Prinzipiell kann man alles mit den Bildern machen, was ImageMagick zulaesst. Das ist eine ganze Menge. Allerdings wuerden alle Bilder mit ein- und demselben Satz von Bearbeitungswerkzeugen und Einstellungen fuer diese bearbeitet werden.
3.) Nein; ist nicht moeglich.
Perl bindet sich einfach via CGI in den Webserver ein. Das ist nichts Besonderes, und passiert meistens so, wenn der Webserver nicht schon mit nativem Perl-Support daherkommt. Wenn du kein Perl kannst wird dir der Sourcecode der Gallerie vermutlich nicht viel nutzen; ich kann ihn dir aber gerne zukommen lassen - gebraeuchliche Einstellungen werden aber in einem separaten Configfile vorgenommen.
Hast du Photoshop ? Da geht's recht angenehm, hab ich früher immer gemacht
Ich weis nur nicht ob das mim ein/ausblenden auch geht, aber ich habs damals auf PS 7.0 gmacht, also denk ich heute sollts gehen
Das Problem ist, dass ich extrem viele Bilder habe und im Laufe der Zeit mache. Das heißt, ich brauche irgendwas, wo ich einfach ein Bild per FTP in einen Ordner lade und meine Webseite es selbstständig als Thumbnail speichert und mir einfügt.
Ich würde den Käse ja selbst machen, aber ich habe absolut keine Ahnung wie ich PHP, DP und was man da auch braucht auf meinem Webserver installiert und dazu bringt selbstständig zu arbeiten. Geschweige denn, das Ergebnis auf meiner Homepage wieder auszugeben ;(.
Wenn mir jemand das mit den Thumbnails installieren könnte, dann versuche ich auch den Rest mit PHP selbst zu implementieren...
Wenn dein Webspace halbwegs was taugt und "CGI-Programme" erlaubt, musst du gar nichts nachinstallieren, um mein Skript zu verwenden.
Zitat von COLOSSUSWenn dein Webspace halbwegs was taugt und "CGI-Programme" erlaubt, musst du gar nichts nachinstallieren, um mein Skript zu verwenden.
würd dir empfehlen die 3 Zeieln code selbst zu programmieren
hopala... mehr als 3 Zeilen
Code: PHPfunction create_thumbs($file_dir, $file, $width, $height, $type, $longer_2be, $preview_quality, $save_dir) { include 'connect.php'; switch ($type) { case 1: $image = imagecreatefromgif($file_dir.$file); header('Content-type: image/gif'); break; case 2: $image = imagecreatefromjpeg($file_dir.$file); header('Content-type: image/jpeg'); break; case 3: $image = imagecreatefrompng($file_dir.$file); header('Content-type: image/png'); break; default: return false; break; } if ($width < $height) { $resize_factor = (float) ($height/$longer_2be); $new_height = (int) $longer_2be; $new_width = round($width/$resize_factor); } else { $resize_factor = (float) ($width/$longer_2be); $new_width = (int) $longer_2be; $new_height = round($height/$resize_factor); } $preview = imagecreatetruecolor($new_width, $new_height); imagecopyresampled($preview, $image, 0,0,0,0, $new_width, $new_height, $width, $height); imagejpeg($preview, $save_dir.$file, $preview_quality); };
Zitat von fatmike182würd dir empfehlen die 3 Zeieln code selbst zu programmieren
hopala... mehr als 3 ZeilenCode: PHPfunction create_thumbs($file_dir, $file, $width, $height, $type, $longer_2be, $preview_quality, $save_dir) { include 'connect.php'; switch ($type) { case 1: $image = imagecreatefromgif($file_dir.$file); header('Content-type: image/gif'); break; case 2: $image = imagecreatefromjpeg($file_dir.$file); header('Content-type: image/jpeg'); break; case 3: $image = imagecreatefrompng($file_dir.$file); header('Content-type: image/png'); break; default: return false; break; } if ($width < $height) { $resize_factor = (float) ($height/$longer_2be); $new_height = (int) $longer_2be; $new_width = round($width/$resize_factor); } else { $resize_factor = (float) ($width/$longer_2be); $new_width = (int) $longer_2be; $new_height = round($height/$resize_factor); } $preview = imagecreatetruecolor($new_width, $new_height); imagecopyresampled($preview, $image, 0,0,0,0, $new_width, $new_height, $width, $height); imagejpeg($preview, $save_dir.$file, $preview_quality); };
les dich in die php-Funktionen auf php.net ein (wegen den Parametern). bin mir sicher, das is schnell zu adaptiern. Muss jez leider weg
Hab gerade rausgefunden, dass ich GD installiert hab am Server!
also ... prinzipiell musst du nur die Funktion laufen lassen mit den Parametern (entweder ersetzt du die gleich in der Klammer oder du rufst die Funktion einfach auf)
hth
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025