Do you have a question? Post it now! No Registration Necessary. Now with pictures!
- Posted on
- Al Davis
August 25, 2004, 12:15 am
rate this thread
including comp.lang.perl.misc, c.l.p.moderated,
comp.lang.php. Nothing appeared on my news server, so I'm trying
again - this time posting a separate copy of the message to each
I'm thinking this should be fairly easy to accomplish - a quick and
dirty ... what? ... script? program?
Background: I have a website - created using a html-generator
application called Dreamweaver. I have some limited knowledge of
html, and I sort of know what php does. I've read that Perl is cool,
powerful and free ... but beyond that ...???. I know next to nothing
Here's the scenario:
o User brings up page with, say, 5 thumbnail images. The thumbnails
represent 5 sets of slides (jpegs), in, say, 5 separate subdirectories
living in my area of my website host's system. Each slide set
contains from 10 to 20 images, each with an associated caption. Jpegs
are named: s01.jpg, s02.jpg, s03.jpg, ... in each subdirectory (or
maybe they have unique names - but let's simplify). The slides are
different sizes, ranging from 400x300 to 1000x800 pixels
o Selecting a thumbnail (by clicking) from among the 5 takes the user
to a page where he sees the first slide and first caption associated
with that thumb. In additon to the jpeg and the caption, the screen
would contain some buttons that the user can click to go back a slide,
go forward a slide, or return home to thumbnail page. User can also
click on an image to enlarge it - meaning he would bring up the same
page, but it would show the file t01.jpg, which is, say, an un-cropped
version of s01.jpg. (Or perhaps, he would have specified at the home
page whether he wanted the high or the low bandwith version of the
o Subsequent clicking on the forward button brings up the subsequent
slides in sequence, returning to the first slide after the last is
displayed. Other than the different images and captions, the pages are
identical with regard to title, background, font, layout, etc.
I know how to accomplish this by the brute force method: For each of
the X number of images in a subdirectory, create X unique html
code-pages - slide1.htm, slide2.htm, etc. - that each reference a
particular image and particular caption, bringing up the next (or
previous) code-page in sequence when the user clicks to advance (or go
back). So for 5 sets of slides, each with 20 images, you'd have a
total of 100 unique .htm files. Actually, there would be 200 files,
given that there are a small and large version of each image.
Here's the more elegant approach:
One "routine" does everything. You ?pass? the name of the slide show
subdirectory to the routine as an ?argument?, and assign it to a
filename ?string variable? somehow. You might also pass the number of
slides in the subdirectory, unless there's a way for the routine to
determine what it is (like, by reading the number from another file,
or by "calling" some ?system function?, that reveals the number of
files in the directory.) The routine then loops through the list,
counting from 1 to X, and somehow opening the associated s0n.jpg file
(and associated caption text) to put up on the user's screen as he
clicks his way through the show.
This brings up a host (no pun intended) of basic questions:
o Where would this code or script or html actually run? On the site
host? It is downloaded to the user's machine? Is it intrepreted by
some entity - like the browser?
o What support is needed on the host side for something like this?
What about the user/client side? If it's just a browser he needs, will
any old browser do? (I do know that the host for my own website ...
catalog.com ... does support php. The support for it is free for the
sites they host.)
o Is this a question of "self-modifying" html? (I'm thinking that's
o What is the easiest way to get this done. Could you learn enough
this little routine together and get it working?
Thanks for your attention
Camp Springs, Maryland
Re: Slide show: this should be fairly straightforward - a what languageto use question
I spent a bunch of time writing a response. I was going to email it,
because this question is off topic here. Then I found out that the OPs
email address is munged.
OK, short answer, this question belongs in
comp.infosystems.www.authoring.cgi. I have more to tell you, but I don't
have your email address and my comments are of topic for this newsgroup.
Re: Slide show: this should be fairly straightforward - a what language to use question
> Note: I tried cross-posting this message to several newsgoups,
> including comp.lang.perl.misc, c.l.p.moderated,
> comp.lang.php. Nothing appeared on my news server, so I'm trying
> again - this time posting a separate copy of the message to each
Well, you should find the groups most appropriate group for your topic
and post there.
> I'm thinking this should be fairly easy to accomplish - a quick and
> dirty ... what? ... script? program?
> Background: I have a website - created using a html-generator
> application called Dreamweaver. I have some limited knowledge of
There is your first problem. You should really learn some HTML before
tackling any real programming language
> and I sort of know what php does. I've read that Perl is cool,
> powerful and free ... but beyond that ...???. I know next to nothing
Perl is a general purpose programming language that can be used to write
server side programs that can be used through CGI. For Perl resources,
checkout http://learn.perl.org /.
> Here's the scenario:
We do not write applications to specs here. You will need to show what
you have done and ask specific help.
For your purposes, I would recommend Perl with CGI.pm and HTML::Template.
My first Perl CGI script, which is not a work of art or anything, was
written so that I could drop a bunch of photos in a directory, and a
photo album page would be generated for that directory on the fly. You
can see it in action at:
and the source code is at:
<Long description snipped>
> o Where would this code or script or html actually run? On the site
> host? It is downloaded to the user's machine? Is it intrepreted by
> some entity - like the browser?
A CGI script running on the server would save you from dealing with all
> o What support is needed on the host side for something like this?
> What about the user/client side? If it's just a browser he needs, will
> any old browser do? (I do know that the host for my own website ...
> catalog.com ... does support php. The support for it is free for the
> sites they host.)
Any old browser will do so long as you send halfway reasonable HTML back
to the browser.
> o Is this a question of "self-modifying" html? (I'm thinking that's
> not possible.)
Perl's HTML::Template module is perfect for this.
> o What is the easiest way to get this done. Could you learn enough
> this little routine together and get it working?
Well, you would have to decide what you want to learn. However, if you do
not even know HTML, I doubt you could pull it off in a day.
Why not use something like