#!/usr/bin/perl require "cgi-lib.pl"; #Gets vars from screen. &ReadParse(*in); require "cookie.hib"; #set cookies for login #Set time and date info ($SECONDS, $MINUTES, $HOURS, $MDAY, $MON, $YEAR, $WDAY, $YDAY, $ISDST) = localtime(time); @months = ('','January','February','March','April','May','June','July','August','September','October','November','December'); @days = ('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); ($sec,$min,$hour,$day,$month,$year,$day2) = (localtime(time))[0,1,2,3,4,5,6]; $month +=1; if ($sec < 10) { $sec = "0$sec"; } if ($min < 10) { $min = "0$min"; } if ($hour < 10) { $hour = "0$hour"; } if ($day < 10) { $day = "0$day"; } $month_no = $month; if ($month < 10) { $month = "0$month"; } $year += "1900"; if ($hour >= 12) {$ex = "P.M.";} else { $ex = "A.M."; } if ($hour == 0) { $hour = 12; } if ($hour > 12) { $hour -= 12; } $data_dir = "/home/websites/default/htdocs/data"; print "Content-type: text/html\n"; &GetCookies('SessionID'); if ($Cookies{'SessionID'} eq "") { my @letters=("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"); my $limit=int(rand 7)+4;#at least 4 digits, at most 10 for (my $i=0;$i<$limit ;$i++) { my $alternateNumLet=int(rand 2);#so if 0, add a number, if 1 add a letter my $aLetter=uc($letters[int(rand ($#letters+1))]);#gets a random letter from letters array $aLetter=($aLetter eq "I")?"i":$aLetter;# I can be confused with 1: I1, so better i1 $combination.=($alternateNumLet)?$aLetter:int(rand 9)+1;#excludes zero, so O=letter, max num 9 (one digit..$ #to fetch zero too, just drop +1, raise 9 to 10 too please. } $in{'session'} = $combination; &SetCookies('SessionID',$in{'session'}); } else { $in{'session'} = $Cookies{'SessionID'}; } unless (-d "$data_dir/tracking$in{'page1'}/$year/"){ mkdir "$data_dir/tracking$in{'page1'}/$year/", 0775; } open(USER_FILE, ">>$data_dir/tracking$in{'page1'}/$year/$in{'session'}") || die "1Error: Cannot write $NAME data file. $data_dir/tracking/$year/$in{'session'}\n"; print USER_FILE "$in{'page'}½$when½$ENV{'REMOTE_ADDR'}½$ENV{'REMOTE_HOST'}½\n"; close USER_FILE; #total unless (-d "$data_dir/pageviews$in{'page1'}/total/"){ mkdir "$data_dir/pageviews$in{'page1'}/total/", 0775; } open(USER_FILE, ">>$data_dir/pageviews$in{'page1'}/total/$in{'page'}") || die "2Error: Cannot write $NAME data file.\n"; print USER_FILE "1\n"; close USER_FILE; #year unless (-d "$data_dir/pageviews$in{'page1'}/year/"){ mkdir "$data_dir/pageviews$in{'page1'}/year/", 0775; } open(USER_FILE, ">>$data_dir/pageviews$in{'page1'}/year/$year.$in{'page'}") || die "3Error: Cannot write $NAME data file.\n"; print USER_FILE "1\n"; close USER_FILE; #month unless (-d "$data_dir/pageviews$in{'page1'}/month/$year/"){ mkdir "$data_dir/pageviews$in{'page1'}/month/$year/", 0775; } open(USER_FILE, ">>$data_dir/pageviews$in{'page1'}/month/$year/$month.$in{'page'}") || die "4Error: Cannot write $NAME data file.\n"; print USER_FILE "1\n"; close USER_FILE; #day unless (-d "$data_dir/pageviews$in{'page1'}/day/$year/"){ mkdir "$data_dir/pageviews$in{'page1'}/day/$year/", 0775; } open(USER_FILE, ">>$data_dir/pageviews$in{'page1'}/day/$year/$month.$day.$in{'page'}") || die "6Error: Cannot write $NAME data file.\n"; print USER_FILE "1\n"; close USER_FILE; if ($in{'redirect'} eq "") { print "Location: images/blank.jpg\n\n"; }else { print "Location: index.htm\n\n"; } 1;