Item Description: Manage Cookies via Perl CGI
Review Synopsis: Review, resources and simple usage of CGI::Cookie
revised: 10/22/2000 - unhappy with original "review"
CGI::Cookie is an easy way of managing cookies for your website.
CGI::Cookie is authored by Lincoln D. Stein
There are many available documents and examples available to show you how to utilize this module. I am hoping that I can create a review, and not just another coding example.
Below is an example, however it is not near as complete as the examples that may be found at the following sites:
- Complete Cookie information can be found at http://www.ics.uci.edu/pub/ietf/http/rfc2109.txt
- The PerlArchive Site has some good links: here
- Lincoln D. Stein's CPAN directory
I have used this module on the following platforms without issue.
- Solaris
- HP-UX
- Linux (SuSE, Caldera)
- FreeBSD 3.x
- Windows (95,98,NT)
Why use it?
- Session management
- User login management and security
- Impress/scare your users by tracking what they do
- Saving data to be used later when you lack a database
- Because it's easier than doing it by hand
What I've used it for
- Secure login session management
- Manage webpage "themeing"
For those wanting a quickie usage without following the above links...
This example will use CGI and CGI::Cookie. It will create a cookie, set the cookie via the HTTP header and then retrieve the cookie and display it.
In my example, this is what gets sent to the browser to create the cookie...obtained via an NT command line. Note that at a command line, you will not see the set cookie in the print loop, as there was no browser to do the storing/retrieving.
Set-Cookie: CookieName=CookieValue; path=/C:\wardk\cookie.pl Date: Wed, 13 Sep 2000 21:00:35 GMT Content-Type: text/html
Here is the code that created the above. Happy coding!
#!/usr/bin/perl use CGI; use CGI::Cookie; $q = new CGI; # Create a new cookie $cookie = new CGI::Cookie(-name=>'CookieName',-value=>'CookieValue'); # set the Cookie print $q->header(-cookie=>$cookie); print $q->start_html; %cookies = fetch CGI::Cookie; # print the cookie while (( $k,$v) = each %cookies) { print "<p>$k = $v"; } print $q->end_html; exit;
|
---|
Replies are listed 'Best First'. |
---|