Hello Engin,
<?php
$img_folder = "bilder1/";
$_filenames = glob($img_folder.'*.*');
echo "<pre>\n";
echo htmlspecialchars(print_r($_filenames,1));
echo "</pre>\n";?>
Schau mal, was dieses Stück Code als Ausgabe liefern würde, und zeig uns mal zwanzig Zeilen davon...
Also wenn ich das so übernehme wie oben kommt eine fehlermeldung,
Parse error: syntax error, unexpected '.' in C:\xampp\anonymous\nispetlocal\nispet-galerien\bayram\index.php on line 23
Der Slash war da leider reingerutscht.
Wo aber Division by Zero herkommt, kann ich nicht nachvollziehen.
Herauskommen muss soetwas ähnliches:
Array
(
[0] => bilder1/Cat1.gif
[1] => bilder1/Hello.gif
[2] => bilder1/Weihnachtsmann.gif
[3] => bilder1/cat2.gif
[4] => bilder1/gelesen.gif
[5] => bilder1/mail.gif
[6] => bilder1/ungelesen.gif
[7] => bilder1/vorher_lesen.txt
)
Das ist dann also der Inhalt des Verzeichnisses
Den hattest Du ja mit Deiner anderen Methode auch schon fast richtig abgefragt. Allerdings hättest Du keine Datei namens "0" abfragen können, da das While-Statement falsch ist.
Nun müssen wir doch erstmal überlegen, ob das alles Bilder sein können.
Das kann man mit getimagesize() ermitteln.
http://de2.php.net/manual/en/function.getimagesize.php
if (is_array($_filenames)) ## hat glob() uns ein Array geliefert?
{
foreach ($_filenames as $key => $name) ## für jedes Element schauen, ob es ein Bild ist
{
if (false === @getimagesize($name))
{
unset($_filename[$key]); ## wenn es keins ist, den Eintrag entfernen
}
}
}
Wenn Du Deine Bilder nun noch sortieren willst, kannst Du damit auch gleich den Index neu aufbauen lassen:
sort($_filenames);
Danach sind die Lücken, die wir vorher geschossen haben, durch Neuanordnung/Aufrücken wieder geschlossen.
Nun wollen wir ja nicht alle 100 Files ausgeben lassen, sondern nur diejenigen, die auf die Seite sollen.
$pagerows = 10; ## Festlegen, wieviele auf eine Seite sollen:
$active_page = 0; ## wir nehmen an, dass wir auf der Seite 0 beginnen
if(isset($_POST['ctrl']['active_page']))
{
$active_page = intval($_POST['ctrl']['active_page']);
}
$active_row = $active_page*$pagerows; ## nächsten Index berechnen
$stop = $active_row + $pagerows;
while (isset($_filenames[$active_row]) and $active_row < $stop)
{
## link generieren
$active_row++;
}
wenn active_page > 0 ist, den Link auf die Vorgängerseite generieren
echo "<input type="hidden" name="ctrl['active_page']" value="$active_page" />\n";
Wenn $active_row == $stop ist, den Link auf die Nachfolgeseite generieren
So ungefähr kann es funktionieren.
Harzliche Grüße vom Berg
http://bergpost.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)
![](http://bitworks.de/~selfHTML/Virencheck.gif)