Exercises, examples and other material relating to training module P407. This topic is presented on public course
Using Perl on the Web
Each time you submit a form to a web server using CGI, you start a new program with new variables, and when the server has sent you back its response, that program exits, with a loss of all data in memory. That's fine for a one-screen application, but in practise you'll want to string together a series of forms to make up a shopping application, a bulletin board, or another application. To do this, you'll need to "maitain state" and there are various ways of doing this, which this important module studies.
Related technical and longer articles
Handling Cookies through CGI.pm
Articles and tips on this subject | updated |
1951 | Whisky - Setting and reading cookies from Perl Fancy a Whisky - if you click on this link, our barman will choose a glass of whisky at random for you, and give it you on the house. Once you're hooked and secured as a customer, he'll sell you further glasses of the same whisky, remembering how many you've had and which is 'your' tipple. Just keep ... | 2008-12-18 |
243 | new 'Perl on the Web' example I've been looking for quite a while to put together an example that uses sessions (via hidden fields or cookies) in Perl ... written to a good standard, with decent error messages, security and user feedback, and with the look-and-feel of the page separated from the code so that each can be maintained ... | 2006-06-05 |
Examples from our training material
sweet.pl | Perl, CGI, sessions - application template, first principles |
sweeter.pl | Perl, CGI, sessions - complete application template second steps |
sweetest.pl | Perl, CGI, sessions - complete application template, full demo |
whisky.pl | Cookies from first principles - demonstration |
Pictures
Maintaining State
A study in concentration
Background information
Some modules are
available for download as a sample of our material or under an
Open Training Notes License for free download from
[here].
Topics covered in this module
The need for non-transient data.
Multiple users.
Schemes for maintaining state.
Which scheme should I use?.
Central database example.
Our database server.
Planning our application.
How it fits together - entry to the site.
The next page.
Modules used.
Persistent cookies.
Shopping cart using hidden fields - example.
Shopping cart using cookie - example.
Templating system.
Security considerations for server side applications.
1. Tainting.
2. Regular expressions from user.
3. validate via email.
4. Data in hidden directories.
5. Credit card info in cookies.
6. https.
7. Avoid \ etc..
8. Temp file names.
9. Save before send.
10. tr.
Complete learning
If you are looking for a complete course and not just a information on a single subject, visit our
Listing and schedule page.
Well House Consultants specialise in training courses in
Ruby,
Lua,
Python,
Perl,
PHP, and
MySQL. We run
Private Courses throughout the UK (and beyond for longer courses), and
Public Courses at our training centre in Melksham, Wiltshire, England.
It's surprisingly cost effective to come on our public courses -
even if
you live in a different
country or continent to us.
We have a technical library of over 700 books on the subjects on which we teach.
These books are available for reference at our training centre.