O'Reilly logo

Perl for Web Site Management by John Callender

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

The Verification Script

We’re almost finished with the user-registration system. All that’s left now is the verify.cgi script, which is what allows users who have their emailed verification code to activate their account. That script performs the following steps:

  1. Deleting the verification code from the user’s submitted information (since it is no longer needed), and then storing that submitted information in the member data file.

  2. Adding an entry for the user to the .htpasswd file, using the Apache::Htpasswd CPAN module mentioned previously.

  3. Adding the user to the appropriate group in the .htgroup file.

  4. Removing the user from the pending-applications file.

  5. Emailing the user a copy of the username and password for future reference.

Example 19-4 shows the verify.cgi script that allows the final verification step to take place in the SoCalSail user-registration system.

Example 19-4. The verify.cgi script

#!/usr/bin/perl -Tw # verify.cgi # verifies receipt of the member's verification code, and activates the # member's account by: # # 1) writing their information to the $member_file, # 2) adding their username/password pair to the .htpasswd file, # 3) adding their name to the .htgroup file, and # 4) deleting their entry from the submission queue. use strict; use CGI qw(:standard); use Fcntl qw(:flock); use Apache::Htpasswd; use lib '/home/jbc/lib'; use Socalsail::Make_page; use Socalsail::Register qw(read_register_queue write_register_queue read_members write_members read_htgroup ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required