#!/usr/bin/perl -wT use CGI; use strict; # Set Variables my $w = new CGI; my $ip = $ENV{'REMOTE_ADDR'}; my $message = ""; my $found_err = ""; my $filenum = time.int rand 1000000; # Grab Input From Form my $username = $w->param('username'); my $domain = $w->param('domain'); my $email = $w->param('email'); my $service = $w->param('service'); my $conditions = $w->param('conditions'); # Begin Sanitising Input if ($username !~ /^[A-Za-z][-.\w]{2,29}$/) { $message = $message."
Error With Username. Please Retry
\n"; $found_err = 1; } if ($domain !~ m/^a.com|c.com|f.com|h.net|ho.com| |i.com|k.com|o.com|s.com|x.com$/) { $message = $message."Error With Domain. Contact Support
\n"; $found_err = 1; } if ($email !~ /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/i) { $message = $message."Error With E-Mail Address. Please Retry
\n"; $found_err = 1; } if ($service !~ m/^Yes|No$/) { $message = $message."Error With Service. Contact Support
\n"; $found_err = 1; } if ($conditions !~ m/^Yes$/) { $message = $message."Please Accept The Terms And Conditions
\n"; $found_err = 1; } if ($found_err) { &PrintError; } # Dump User Data To File open (LOGFILE, ">>/var/log/accounts/$filenum") or die $!; print LOGFILE "$username,$domain,$email,$service,$ip\n"; close (LOGFILE); # Display Html Completion print "Content-type: text/html\n\n"; print "Blah Blah, All Done\n"; # Display Error Messages sub PrintError { print "Content-type: text/html\n\n"; print $message; exit 0; return 1; }