(для тех кто не в курсе, о скрипте из топика
http://forums.webscript.ru/showthread.php?s=&threadid=2911&perpage=15&pagenumber=2)
Вот вариант:
sub view_delete {
#--------------------------------------------
my ($how_pages, $num_recs, $pages, $from, $to);
$FORM{\'page\'}||=1;
@allmail=&get_all_recs_to_array;#Все считывается в @allmail
$num_recs=$#allmail;#Номер последнего эл-та
#Сколько страниц?
$how_pages = int ($num_recs/$mes_per_page);
++$how_pages if ($how_pages*$mes_per_page != $num_recs);
#Строим ссылки-переходы
for (my $i =1; $i<=$how_pages; $i++){
#....HTML
if ($i != $FORM{\'page\'}){$pages .= qq~
$i~;}
else {$pages .= qq~ $i~;}
}
$pages||= qq~ 1 ~;
#Считаем границы:
$from=$mes_per_page*($FORM{\'page\'}-1);
$to=$from+$mes_per_page-1;
if ($from>$num_recs){$from=0;}
if ($to>$num_recs){$to=$num_recs;}
#Вывод нужной страницы
foreach my $rec (@allmail[$from..$to]){
($mail,$name,$city,$phone) = split(/\\::/, $rec);
#+ Все что угодно
#Мы работаем только с тем куском массива
#который относится кнашей странице
}
#end sub
}