@dead_orc
Ich glaube deine while-Schleife wird (unter Umständen) sofort abgebrochen, weil erst "." eingelesen wird (noch vor den Bildern). Ich würde das eher mit einer IF-Abfrage in der while-Schleife machen:
Code:
<?php
$dir = "dein/dir/";
if (is_dir($dir))
  if ($dh = opendir($dir))
  {
    while (($file = readdir($dh)) !== false)
    {
      if($file != '.'  && $file != '..')
        $files[] = $file;
    }
    closedir($dh);
  }

$start = (!empty($_GET['start'])) ? intval($_GET['start']) : 0;
foreach(array_slice($files, $start, $start+5) as $image)
{
  echo '<img src="'.$dir.$image.'" alt="'.$image.'" /><br /> ';
}
echo '<a href="'.$_SERVER['PHP_SELF'].'?start='.($start+5).'">Nächste Seite</a>';
?>
@Yury_b
Das müsste eigentlich funktionieren. Ansonsten füge mal ein error_reporting(E_ALL); an den Anfang des Scriptes ein und poste die Ausgabe. Oder gib uns mal einen Link zu der Seite, auf der du das testest. Dann könnte man dir besser helfen.
PS: In einer Datenbank würde ich die Bilder nicht speichern. Das strapaziert den Server nur unnötig. Und es müsste eigentlich auch per Ordner-Auslesen funktionieren.

freundliche Grüße, Rolus