Календарь на Perl
Главная → Статьи → Календарь на Perl
Для работы потребовался список недель, долго думал, как же его организовать и в итоге получился простенький календарик
#!/usr/bin/perl use CGI::Carp qw(fatalsToBrowser); use Time::Local; print "Content-type: text/htmlnn"; my @months = ('Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'); my $dt = time; my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); $dt = timelocal(0,0,0,1,0,$year); my $i=0; my $m=1; my $w=1; my $month_changed=0; my $day_color='white'; print '<table cellspacing=0 border=0 ><tr>'; for ($i= 0; $i<365+(($year%4 == 0)?1:0); $i++) { ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($dt+$i*86400); if ($mon != $m) { $m=$mon; $month_changed=1; if ($m % 2 == 0) { $day_color='#f0f0f0'; } else { $day_color='white'; } } if ($i == 0) { print '</tr><tr><td style="background-color: '.$day_color.'"><input type="checkbox" id="wid_'.($w).'"></td>'; for (my $t=1;$t<$wday;$t++) { print '<td style="background-color: '.$day_color.'"> </td>';} } print '<td style="background-color: '.$day_color.';text-align: right"><label for="wid_'.($w).'">'.$mday.'</label></td>'; if($wday == 0) { if ($month_changed eq 1) {$month_changed=0; print '<td><b> '.@months[$mon].'</b></td>';}; $w++; print '</tr><tr><td style="background-color: '.$day_color.'"><input type="checkbox" id="wid_'.($w).'"></td>'; } } print '</table>';
Реклама:
Комментарии:
Maxim:
Очень иронично смотрятся вместе ссылка на "Шаблонизатор в CTPP2" в "Других материалах" и print'ы html'а в коде... =)
zoonman:
Календарик появился до статьи про шаблонизатор.
имя:
e-mail (не публикуется):
комментарий:
e-mail (не публикуется):
комментарий: