Willkommen in der Webstatt
User-1 am 26.04.06 15:29

Hey,
ich habe bei meiner homepage http://rollbrett-club.de.vu jetzt ne bildergallery (erst 3 bilder) wie kriege ich es hin, dass ich diese ohne datenbank so schön in reihe und glied kriege und net so einfach mit html da reinschleudere (wie gerade im moment) und wie kann ich es machen, dass die bilder erst klein sind und wenn man dadrauf klickt, in ganzer größe mit beschreibung angezeigt werden?

netcup.de Warum gibt es hier Werbung?
User-2 am 26.04.06 15:35

Also mit datenbank hat das vorerst gar nichts zu tun!

Also, du hast ein Thumbnail des Bildes (Stark verkleinertes Bild)
Dieses bindest du normal ein (<img ..../>)
verlinkst dies logischer weise zum großen Bild!

Das heist im Klartext.

<a href="bilder/bild_1.jpg" target="_blank"><img src="bilder/bild_1_thumb.jpg" border="1" width="120" height="90" /></a>

^^ So könnte das zum bsp aussehen!

User-3 am 26.04.06 15:36

gibt es da nicht diverse Gallerien im Netz, die den jeweiligen Bilderordner auslesen und dann Thumbnails erstellen. Schonmal gegooglet?
btw: Willst du die Bilder einfach verkleinert darstellen oder richtig Thumbnails erstellen? mit "richtigen" Thumbnails würdest du zumindest die Ladezeit der Bilder erheblich reduzieren...

mfg Alex

User-1 am 26.04.06 15:37

man das ist dann ja voll viel arbeit n paar bilder online zu stellen

User-3 am 26.04.06 15:38

Quote
Original von Rafael
man das ist dann ja voll viel arbeit n paar bilder online zu stellen


Wieso das, du kannst doch doch alles dynamisch mit einem PHP Script machen, du musst dazu dann nur die Bilder in den Ordner laden und es werden Thumbnails und Verlinkungen erstellt.

Ich glaube Milahu hatte dieses Script "ListPics" geschrieben. Vielleicht einfach mal bei ihm nachfragen, ob du es bekommen kannst.

mfg Alex

User-1 am 26.04.06 15:39

ich weiß nicht wirklich was thumbnails sind (ich google das nicht) ich wollte das so machen, dass ich so ein kleines bild als link zum großen habe. auf dem kleinen sollte man jedoch erkennen können, um was es sich handelt

User-3 am 26.04.06 15:41

Quote
Original von Rafael
ich weiß nicht wirklich was thumbnails sind (ich google das nicht) ich wollte das so machen, dass ich so ein kleines bild als link zum großen habe. auf dem kleinen sollte man jedoch erkennen können, um was es sich handelt


Thumbnails sind diese kleinen Bilder, die du haben möchtest. Die größe des Bildes kannst du bei dem Script von Milahu selber einstellen. Ich finde es gerade nicht, sonst würde ich es dir hochladen (soweit ich das darf). Schick ihm doch alternativ einfach mal eine freundliche PN.

mfg Alex

User-1 am 26.04.06 15:43

alex0r
wie sieht denn dieses script aus??? das wäre dann ja echt praktisch. bitte gib mir mal das script dazu :(

User-4 am 26.04.06 15:51

Quote
Original von xyz-8
Schick ihm doch alternativ einfach mal eine freundliche PN.

User-3 am 26.04.06 15:52

Mensch hast du ein Glück, habs grade gefunden.

Falls ich das hier nicht einfach so hochladen darf, bitte editieren oder mir eben bescheid sagen, danke.

mfg Alex

edit:// BN @ Spammodus online?

User-1 am 26.04.06 15:54

ooh danke ich probiers gleich heut abend aus (jetzt habe ich keine zeit) und ich sag euch mal, ob es geklappt hat :D

User-1 am 26.04.06 19:27

ist das script denn mit datenbank? muss ich meine datenbank informationen in das script eingeben und wie richte ich da n passwortschutz ein??? meine seite hat keine community und muss ich das dann noch verlinken oder wie???

User-3 am 26.04.06 20:04

1. Es gibt eine edit Funktion.
2. Es liegt eine Readme bei.
3. Learning by doing, du musst dich schon ein bisschen selbst damit auseinander setzen.

mfg alex

User-1 am 26.04.06 20:08

man die readme hab ich befolgt! und mir ist einiges unklar
wenn ich das mit <?php include ... einbinde kommen nur fehler und login schlägt fehl. ich möchte da keine community oder so haben !!!

User-5 am 26.04.06 21:19

es wäre vll. hilfreich wenn du die entsprechende fehlermeldung uns sagst!! Zweitens vll. den Link schickst.

User-6 am 27.06.06 12:41

Sehe ich das richtig das man die Thumbnails nur erstellen kann wenn man diese GB Bibliothek auch hat?

Kann die ja aber nicht auf den gemieteten Webserver packen....

EDIT:
Nochmal damit alle wissen was ich will und nicht nochmal gefragt werden muss...
http://tkd.joehanson.de/index.php?p=medien&s=pics
Habe Bildergallery gebastelt, es fehlt mir nurnoch die erstellung der Thumbnails, das habe ich mir so gedacht das ich die images einfach mit <img src="thumnail.php?file=bild.jpg" /> darstellen lasse... aber ich kriege das thumbnail.php script nicht hin... habe auch schon fertige ausprobiert, welche aber auch nicht funzen weil er funktionen nicht hat oder so... ausserdem würde ich es sowieso lieber selbst schreiben...

User-7 am 27.06.06 16:22

> Sehe ich das richtig das man die Thumbnails nur erstellen kann wenn man diese GB Bibliothek auch hat?
Entweder die GD Bibliothek oder Imagemagick oder eine andere Bildbearbeitungs-Lib.

xyz-8, keine Angst.. mit meinem Skript kann jeder tun und lassen, was er will :)

User-6 am 28.06.06 21:15

Ok das mit der GD hab ich hingekriegt...

hier mein Script:
<?
if(isset($_GET['bild']) AND file_exists($_GET['bild'])) {

// Orginalbild
$bild = $_GET['bild'];

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

// neue Größen berechnen
if(isset($_GET['breite'])) {
$neueBreite = $_GET['breite'];
$neueHoehe = intval($hoehe*$neueBreite/$breite);
} elseif(isset($_GET['hoehe'])) {
$neueHoehe = $_GET['hoehe'];
$neueBreite = intval($breite*$neueHoehe/$hoehe);
} else {
$neueBreite = 160;
$neueHoehe = intval($hoehe*$neueBreite/$breite);
}

if($size[2]==1) {
// GIF
header("Content-type: image/gif");
$altesBild = ImageCreateFromGIF($bild);
$neuesBild = imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
imageGIF($neuesBild);
}

if($size[2]==2) {
// JPG
header("Content-type: image/jpg");
$altesBild = ImageCreateFromJPEG($bild);
$neuesBild = imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
ImageJPEG($neuesBild);
}

if($size[2]==3) {
// PNG
header("Content-type: image/png");
$altesBild = ImageCreateFromPNG($bild);
$neuesBild = imageCreate($neueBreite, $neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
ImagePNG($neuesBild);
}
} else {
echo "Zu änderndes Bild existiert nicht!";
}
?>


Nur seht euch das an, hier das Originalbild:
[URL]http.//tkd.joehanson.de/tkd/pics/alt/alt%20(1).jpg[/URL]

Bild nach der Änderung:
[URL]http://localhost/tkd/pics/thumb.php?bild=alt/alt%20(1).jpg&breite=640[/URL]

Seht ihr den unterschied? Warum ist das Bild nachher so Farblos?

User-7 am 28.06.06 21:26

> [URL]http://localhost/tkd/pics/thumb.php?bild=alt/alt%20(1).jpg&breite=640[/URL]

Du must das Bild schon hochladen...

User-6 am 28.06.06 21:30

Achso ich dachte er könnte es direkt aus dem script auslesen, so könnte man denn Speicherplatz sparen. Also muss ich doch alle Bilder vorher abspeichern... das ja blöd...

User-7 am 28.06.06 21:37

Nein. Ich kann die URL nicht aufrufen. Das geht nur von deinem Rechner aus. localhost wird nämlich
zum aktuellen Rechner aufgelöst. Deswegen ist mein [URL]http://localhost/[/URL] ein anderer als deiner.

Also lad das Ding auf http://tkd.joehanson.de/ oder was auch immer..

User-8 am 28.06.06 21:38

hey du hast ja das gleiche passwort drinnen (im xampp) wie ich.....coooool *fg*
und sogar die gleichen dbs im phpmyadmin ;)

edit: oder du lässt uns auf deinen rechner zugreifen über den 80er port ;)
dann müsstest du nichts hochladen

User-6 am 28.06.06 21:40

Also nochmal:

Code:
<?
if(isset($_GET['bild']) AND file_exists($_GET['bild'])) {

// Orginalbild
$bild = $_GET['bild'];

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

// neue Größen berechnen
if(isset($_GET['breite'])) {
$neueBreite = $_GET['breite'];
$neueHoehe = intval($hoehe*$neueBreite/$breite);
} elseif(isset($_GET['hoehe'])) {
$neueHoehe = $_GET['hoehe'];
$neueBreite = intval($breite*$neueHoehe/$hoehe);
} else {
$neueBreite = 160;
$neueHoehe = intval($hoehe*$neueBreite/$breite);
}

if($size[2]==1) {
// GIF
header("Content-type: image/gif");
$altesBild = ImageCreateFromGIF($bild);
$neuesBild = imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
imageGIF($neuesBild);
}

if($size[2]==2) {
// JPG
header("Content-type: image/jpg");
$altesBild = ImageCreateFromJPEG($bild);
$neuesBild = imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
ImageJPEG($neuesBild);
}

if($size[2]==3) {
// PNG
header("Content-type: image/png");
$altesBild = ImageCreateFromPNG($bild);
$neuesBild = imageCreate($neueBreite, $neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
ImagePNG($neuesBild);
}
} else {
echo "Zu änderndes Bild existiert nicht!";
}
?>


Originalbild:
http://tkd.joehanson.de/pics/alt/alt%20(1).jpg

Bild nach der Änderung:
http://tkd.joehanson.de/pics/thumb.php?bild=alt/alt%20(1).jpg&breite=640




EDIT: ICH HABS!!!!

Einfach imageCreateTrueColor anstatt imageCreate benutzen!!!

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt