[...] # Seite wird mit Parameter aufgerufen (.pl?page1, .pl?page2, etc) my $wert = 1; my $page = $ENV{"QUERY_STRING"}; $page =~ /(page)(\d)/; # $2 enthält die Seitennummer und $value den letzten Eintrag der aktuellen Seite, also bspw. bei Page 4 ist value = 30 my $value = $2*10-10; [...] # SQL Abfrage der Gästebucheinträge entsprechend des values und mit LIMIT my $sql_gb_entries = "SELECT * FROM gaestebuch where id<=(select max(id)-$value from gaestebuch) ORDER BY id DESC LIMIT 10"; my $prepare_sql = $dbh->prepare( $sql_gb_entries) || die $dbh->errstr; $prepare_sql->execute() || die $dbh->errstr; my ($id,$name,$date,$mail,$message); $prepare_sql->bind_columns( \$id,\$name,\$date,\$mail,\$message); [...] # Abfrage der Anzahl aller Einträge my $sql_gb_total = "SELECT count(id) from gaestebuch"; my $prepare_sql_total = $dbh->prepare( $sql_gb_total ) || die $dbh->errstr; $prepare_sql_total->execute() || die $dbh->errstr; [...] my ($total_entries); $prepare_sql_total->bind_columns( \$total_entries); # $wert gibt mir an wieviele Seiten ich darzustellen habe, da ich auf 10Einträge pro Seite beschränken will [...] while($total_entries > $wert*10){ $wert++; } [...] # Bilden der Seiten-Links for (my $var = 1; $var <= $wert; $var++) { print $cgi->a({-href=>"../cgi-bin/gaestebuch?page$var", -class=>"gb_link", -style=>"padding-left: 20px; "},"[Seite $var]"); };