Without any real testing, may I suggest that the $date in the localtime call be surrounded in parens? Whenever I have dealt with localtime, I have found it to be finicky about that. Probably won't fix your current problem, but can save you headaches later.
--Jon R. Dermot Paikkos wrote: > Hi > I have the following sub in a script: > > use Apache::Constants qw(OK NOT_FOUND); > use Apache::Request; > use Apache::Template; > use strict; > > 131 sub week { > 132 my $date = time(); > 133 my ($monthday,$weekday,$yearday)=(localtime $date)[3,6,7]; > 134 (my $weeknum) = int($yearday / 7) + 1; > 135 return ($weeknum,$yearday,$date,$monthday); > 136 } > > I confess I stole it straight out of the perl cookbook - bighorn sheep - > and it should return the week number of the year. It doesn't. $date is > set but all the other vars are uninitialized (expect the + 1 of course) > so I end up with the week as 1. > > I tried this as a snippet on its own and it works. I can't figure out why > it doesn't with mod_perl. I was a bit unsure of whether $date = > time(); should be scalar or an array but neither work. > > I have a feeling I am doing something (Dooh) stupid here. Can > anyone spot a mistake? > Thanx. > Dp. > > > ~~ > Dermot Paikkos * [EMAIL PROTECTED] > Network Administrator @ Science Photo Library > Phone: 0207 432 1100 * Fax: 0207 286 8668 > > >