From: White Hat <[EMAIL PROTECTED]>
To: FreeBSD Users Questions <>
Subject: Perl Script in Apache
Date: Sat, 5 May 2007 12:17:39 -0700 (PDT)

I tried to get an answer to this on the Apache forum,
but unfortunately, I was not successful.

Running Apache on a FreeBSD-6.2 machine, I am
attempting to set up a web page that changes a
specific image on a daily basis. I found a Perl script
that is supposed to do this, but it seems to fail. All
that is displayed is a red [X]. If I run the script
from the command line, it works, as it should. Well,
at least it displays the correct file name.

I assume I am doing something wrong with the actual
web page, or else I am incorrectly calling the Perl

This is a commented version of the script.


To display an image simply use this in your HTML:


# find out the day of the year
my $day_of_year = (localtime(time()))[7];

# define the path where the images live "." is the
current directory
$path = "/usr/local/www/apache22/data/pics";
# read all the jpg, gif or png filenames from the
directory into an array
opendir(DIR, $path);
@files = grep { /\.(jpg|gif|png)$/i } readdir(DIR);

# sort the filenames alphabetically
@files = sort( {lc $a cmp lc $b} @files);

# count the number of images
$no_of_images = scalar(@files);

# Now the fun bit :) We loop through the images once
# repeating them in the same order. If we divide the
# number of day of the year by the number of images in
# directory we get the number of times have repeated
the images.
# We are interested in the remainder of this
calculation (this
# is calculated using the % operator). Note - there
must be
# less than 365 images in the directory! We need to
# one from this number because arrays start at zero
not 1!
if ( $no_of_images <= $day_of_year ) {
  $image_to_use = ($day_of_year % $no_of_images)-1;
else {
  $image_to_use = $day_of_year-1;
print "Location: $files[$image_to_use]\n\n";


White Hat

Can't help you with your script, but there are many of these image rotation scripts free on the web -- for example is a good place to look for all kinds of perl/php scripts IMHO.

Good luck!

Download Messenger. Join the i’m Initiative. Help make a difference today.

_______________________________________________ mailing list
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to