Miscellaneous Perl programming information. How to use for loops and printing HTML properly.

Posted: August 28, 2012. At: 9:09 PM. This was 5 years ago. Post ID: 4504
Page permalink: http://securitronlinux.com/bejiitaswrath/miscellaneous-perl-programming-information-how-to-use-for-loops-and-printing-html-properly/

Now, we must convince Congress to stop the FCC. Can you display an alert?

Opening a folder and listing the contents, and not listing certain files. This is the Perl code I was using on my very old Tripod.com website.

opendir(DNAME, "$folder") || die "I cannot open the requested directory $folder \n $!";
@dirfiles2 = readdir (DNAME);
@dirfiles2 = sort(@dirfiles2);
foreach $x2 (@dirfiles2) {
    if ($x2 eq ".") {
	$x2 = ' ';
    if ($x2 eq "..") {
	$x2 = ' ';
    if ($x2 =~ /REMOVED/) {
	$x2 = ' ';
    if ($x2 eq ".cgiclean") { # What is this?
	$x2 = ' ' ;
    if ($x2 eq ".htaccess") {
	$x2 = ' ';
    if ($x2 eq "$archive") {
	print "<OPTION selected value=\"$folder\/$archive\" ID='formstuff'>$archive</OPTION>\n";
    } else {
# Simple hack to weed out those annoying zero length() strings...
	if (length $x2 > 3) {
	    print "<OPTION value=\"$folder\/$x2\" ID='formstuff'>$x2</OPTION>\n";

How to get the date and time with Perl scripting. All you need to do is print “$date”; and you are done.

my @Days = ('Sunday','Monday','Tuesday',
my @Mon1 = ('January','February','March',
my ($Sec,$Min,$Hour,$MDay,$Mon,$Year,$WkDay) = (localtime)[0,1,2,3,4,5,6];
$Year += 1900;
if($Sec < 10) {
    $Sec = "0$Sec"
if($Min < 10) {
    $Min = "0$Min"
if($Hour < 10) {
    $Hour = "0$Hour"
$date = "$Hour:$Min:$Sec - $Days[$WkDay] $MDay $Mon1[$Mon] $Year";

Here is an example showing how to do a for() loop in Perl.

for ( $i=  0; $i <  32; $i++) {
	print "*";

This comprehensive script will print a HTML page to the terminal when you run it. This is a good starter for writing a CGI script that will print out its own HTML. This is using the CGI.pm module. This also sets a cookie containing the date that expires in 3 days.

use CGI qw/:standard -nosticky/;
my $query = new CGI;
print $query->header(-type=>'text/html',
print $query->start_html(-title=>'CGI Viewblog CGI Script.',
			 -meta=>{'keywords'=>'Blog Doom2 Level Editing Linux Doom',
				 'copyright'=>'Copyright 2004 John Cartwright.',
				 'definition'=>'General Viewblog Script.',
				 'description'=>'CGI Viewblog Script.'},
print $query->h1("CGI HTML Script.\n");
print $query->p("This script prints HTML to the terminal.\n");
print $query->end_html;

Finally, this code will write some information to a log file.

open FILE, ">> log.txt" || die "I cannot open the file: log.txt:\n $!\n";
print FILE "Visited: $date\n";
if ($user_ref) {
    print FILE "Referrer URL: $user_ref.\n";
print FILE "Users Browser: $user_agent.--\n\n";
close FILE;

No comments have been made. Use this form to start the conversation :)

Leave a Reply