title image


Smiley Re: script um bilder aufzulisten
Hi,



ich hab' dir gerade eben ein kleines Gallerieskript erstellt. Sollte eigentlich genau das sein, was du wolltest, wenn ich dich nicht falsch verstanden habe ;-)



Kopiere jeweils einfach den Code der folgenden Dateien z.B. in ein Microsoft Word Dokument und erst von dort aus in ein Dokument deines bevorzugten HTML-Editor (z.B. notepad.exe oder Phase 5).



alleBilderEineSeite.php







<html>

<head>

<style type="text/css">

<!--



img

{

border-width:0px;

}



-->

</style>

<script language="JavaScript" src="funktionen.js">

</script>

</head>

<body>

<table style="height:100%; width:100%;">

<tr>

<td style="text-align:center; vertical-align:middle;">

<table style="width:800px;">

<tr>



<?php



include("funktionen.php");



$path="bilder";

$maxBildBreite = 50;

$maxBildHoehe = 50;

$maxZeilen = 8;

$maxSpalten = 8;



if(!isset($min))

{

$min = 0;

$max = $maxSpalten * $maxZeilen;

}



$i=0;

$j=1;



getdir($path);



generateNavigation();



?>

</td>

</tr>

</table>

</td>

</tr>

</table>

</body>

</html>







funktionen.php







<?php



function getResizedImageInfos($bildquelle)

{

global $maxBildBreite, $maxBildHoehe;



$maxWidth = $maxBildBreite;

$maxHeight = $maxBildHoehe;



$info = getimagesize($bildquelle);



$width = $info[0];

$height = $info[1];



$old_width = $width;

$old_height = $height;



$faktor = $width/$height;



if($width > $maxWidth)

{

while($width > $maxWidth)

{

$width = $width * 0.95;

}



$height = $width/$faktor;



//z.B. bei Ausgang: 480 x 640

if($height > $maxHeight)

{

while($height > $maxHeight)

{

$height = $height * 0.95;

}



$width = $height*$faktor;

}

else//z.B. bei Ausgang: 640 x 480

{

}

}

else

{

//z.B. bei Ausgang: 50 x 150

$height = $width/$faktor;



if($height > $maxHeight)

{

while($height > $maxHeight)

{

$height = $height * 0.95;

}



$width = $height*$faktor;

}

else//z.B. bei Ausgang: 50 x 50

{

}

}



return array($old_width, $old_height, $width, $height);

}



function getdir($path)

{

global $i, $j, $min, $max, $maxBildBreite, $maxBildHoehe, $maxZeilen, $maxSpalten, $anzahl_bilder;



$verzeichnis=opendir($path);



while($datei = readdir($verzeichnis))

{

if($datei!="." && $datei!="..")

{

if(is_file($path."/".$datei))

{

$dateiendung = substr($datei,strrpos($datei,".")+1);



if($dateiendung == "jpg" || $dateiendung == "jpeg" ||

$dateiendung == "gif" || $dateiendung == "bmp" ||

$dateiendung == "png")

{

if($i >= $min && $i < $max)

{

$bildquelle = $path."/".$datei;



$ausmasse = getResizedImageInfos($bildquelle);



$old_width = $ausmasse[0];

$old_height = $ausmasse[1];

$width = $ausmasse[2];

$height = $ausmasse[3];



$openPictureInPopupAction = "oeffnen('bild.php?src=".$bildquelle."', ".$old_width.", ".$old_height."); return false;";



echo '

<td style="text-align:center;">

<a href="bild.php?src='.$bildquelle.'" target="_blank" onClick="'.$openPictureInPopupAction.'">

<img src="'.$bildquelle.'" style="width:'.$width.'px; height:'.$height.'px;">

</a>

</td>';



if(($j%$maxZeilen) == 0)

{

echo "

</tr>

<tr>";

}



$j++;

}



$i++;

}

}

else if(is_dir($path."/".$datei) && $datei!="." && $datei!="..")

{

getdir($path."/".$datei);

}

}

}



closedir($verzeichnis);



$anzahl_bilder = $i;

}



function generateNavigation()

{

global $maxZeilen, $maxSpalten, $min, $max, $anzahl_bilder;



$anzahlZellen = $maxSpalten * $maxZeilen;



echo '

</tr>

<tr>

<td colspan="'.$maxSpalten.'" style="text-align:center; padding-top:15px;">';



if(($min - $anzahlZellen) > -1)

{

echo '

<a href="alleBilderEineSeite.php?min='.($min - $anzahlZellen).'&max='.($max - $anzahlZellen).'">Back</a>

&nbsp;&nbsp;';

}



for($i=0; $i<=$anzahl_bilder; $i++)

{

if(($i==0 || ($i%$anzahlZellen)==0))

{

if($min == $i)

{

$page = ($i/$anzahlZellen)+1;



echo '<b>'.$page.'</b>&nbsp;';

echo "\r\n";

}

else

{

$page = ($i/$anzahlZellen)+1;



echo '<a href="alleBilderEineSeite.php?min='.$i.'&max='.($i + $anzahlZellen).'">'.(($i/$anzahlZellen)+1).'</a>&nbsp;';

echo "\r\n";

}

}

}



echo '

&nbsp;<a href="alleBilderEineSeite.php?min='.($min + $anzahlZellen).'&max='.($max + $anzahlZellen).'">Next</a>

<p>

Bilderanzahl: '.$anzahl_bilder.'

</p>';

}



?>







alleBilderEineSeite.php







function getResizedImageInfos(width,height,maxWidth,maxHeight)

{

maxHeight -= 100;



this.width = width;

this.height = height;



faktor = this.width/this.height;



if(this.width > maxWidth)

{

while(this.width > maxWidth)

{

this.width = this.width * 0.95;

}



this.height = this.width/faktor;



//z.B. bei Ausgang: 480 x 640

if(this.height > maxHeight)

{

while(this.height > maxHeight)

{

this.height = this.height * 0.95;

}



this.width = this.height*faktor;

}

else//z.B. bei Ausgang: 640 x 480

{

}

}

else

{

//z.B. bei Ausgang: 50 x 150

this.height = this.width/faktor;



if(this.height > maxHeight)

{

while(this.height > maxHeight)

{

this.height = this.height * 0.95;

}



this.width = this.height*faktor;

}

else//z.B. bei Ausgang: 50 x 50

{

}

}

}



function oeffnen(url, width, height)

{

var scroll = "no";



if(width >= screen.width || height >= screen.height)

{

if(width > screen.width || height > screen.height)

{

scroll = "auto";

}



var infos = new getResizedImageInfos(width, height, screen.width, screen.height);



width = infos.width;

height = infos.height;

}



var left = Math.round((screen.width - width)/2);

var top = Math.round((screen.height - height)/2);



window.open(url + "&width=" + width + "&height=" + height + "&scroll=" + scroll,"","toolbar=no,location=no,resizable=no,status=no,left=" + left + ",top=" + top + ",width=" + width + ",height=" + height);

}







MfG Murdoch!

aktuelle Winamp Playlist                Hörgewohnheiten (Last.fm)



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: