AngelGabriel
И имя мне - легион
- Регистрация
- 23.11.2008
- Сообщения
- 778
Я вот навоял постраничный вывод из файла, еще добавлю автоматическое преобразование думаю по такому виду если в тексте есть
"http://qwerty.ru::Это сылка" то будет преобразовано в <a href = 'http://qwerty.ru'>Это сылка</a>
Проверте на явность говнокода.
"http://qwerty.ru::Это сылка" то будет преобразовано в <a href = 'http://qwerty.ru'>Это сылка</a>
Проверте на явность говнокода.
Код:
#!c:/perl/bin/perl.exe -w
use strict;
use CGI qw(:all);
print header;
# количество строк с переносом, из фала, выводимых на странице, ОТСЧЕТ С НОЛЯ!!!;
my $x = 9;
open FL, "navigation.txt" or die "Cen't open file: $!";
my @allText = <FL>;
close FL;
my $page = int ($#allText/$x - 1)+1; # вычисляем кол-во страниц;
my $to = $x * param('page'); # вычисляем конец среза
my $from = $to - $x; # вычисляем начало среза;
my @slice = @allText[$from..$to]; # получаем нужный срез массива;
# вывод содержимого среза массива;
for (my $i = 0; $i<=$#slice; $i++) {
print $slice[$i]."<br />";
}
# навигации вида [1]-[2]-[3]-->4<--[5]..[N];
#####################################################
#for (my $i = 1; $i<=$page; $i++) {
# if (param('page') != $i) {
# print "[<a href=$ENV{SCRIPT_NAME}?page=$i>$i</a>]-";
# } else {
# print "->$i<--";
# }
#}
############################################################
# навигация вида <--Back Next-->;
###################################
if (param('page') == 1 or param('page') == "") {
print "<--Start";
} else {
my $beack = param('page') - 1;
print "<a href=$ENV{SCRIPT_NAME}?page=$beack> <--Back</a>";
}
if (param('page') > $page) {
print " End!";
} else {
my $next = param('page') + 1;
print "<a href=$ENV{SCRIPT_NAME}?page=$next> Next--></a>";
}
################################################################