#!/usr/bin/perl -t use warnings; use strict; use CGI qw/:standard/; use CGI::Carp qw(fatalsToBrowser); ####### # collect data from form ####### my $username = param("username"); my $password = param("password"); ######### # Cookie junk ######### my $cookiename = "filemanager"; my $tasty = cookie($cookiename); use DB_File; my %users; my $users = "users.db"; # location of database tie %users, "DB_File", "$users", O_CREAT|O_RDWR, 0644 or die "Cannot open file 'default.db': $!\n"; my ($savedpassword, $name, $email, $website, $start) = split(/::/, $users{$username}); ############################################################################################################### # COOKIE CHECKING ############################################################################################################### # First check if we saved a cookie last time if($tasty) { print header(-expires=>'now'), start_html("You are logged in!"); &processing; print end_html; exit; } ######################################################################################################## # Password checking ######################################################################################################## unless ($password eq $savedpassword) { print header(-expires=>'now'), start_html("You need to Login"); print <<"FORM";
Client Login
username
password
 
FORM if (param()) { if (exists $users{$username}) { if ($password ne $savedpassword) { print "Wrong password!"; exit; } } } else { print "username does not exist"; exit; } } ######################################################################################################## # Cookie setting ######################################################################################################## my $cookie = cookie( -NAME=> $cookiename, -VALUE=> $password, ); print header(-COOKIE => $cookie, -expires=>'now'); print start_html("Going through here"); &processing; sub processing { print "test"; } ########### END PROCESSING SUB HERE exit;