object: to convert my personal movie list to HTML on the fly via CGI.
Code:
#! /usr/bin/perl -w
use 5.005
use CGI qw(:standard *table);
$TITLE = "Movie List";
print header, start_html($TITLE), h1($TITLE);
open (MOVIELIST, "/export/home/mydir/movie.list") || die "NO GO ($!)";
print table({-border=>undef},
Tr({-align=>CENTER,-valign=>TOP},
[
th(['Title', 'Genre','Rateing','Time','Production Company']),
while (<MOVIELIST>) {
($TITLE,$GENRE,$RATEING,$TIME,$PROD_CO)=split(/:/, $_);
td(['$TITLE' , '$GENRE' , '$RATEING' , '$TIME' , '$PROD_CO']),
};
]
)
);
# EXAMPLE
# print table({-border=>undef},
# caption('When Should You Eat Your Vegetables?'),
# Tr({-align=>CENTER,-valign=>TOP},
# [
# th(['Vegetable', 'Breakfast','Lunch','Dinner']),
# td(['Tomatoes' , 'no', 'yes', 'yes']),
# td(['Broccoli' , 'no', 'no', 'yes']),
# td(['Onions' , 'yes','yes', 'yes'])
# ]
# )
# );
ERRORS:
Code:
syntax error at ./movie.cgi line 18, near "foreach "
syntax error at ./movie.cgi line 21, near "}"
Execution of ./movie.cgi aborted due to compilation errors.
SAMPLE movie.list:
Code:
Godfather I:Crime, Drama:R:175:Paramount
Godfather II:Crime:R:200:Paramount
Godfather III:Crime:R:161:Paramount
Young and Dangerous 1:Action, Adventure:IIB:99:Mei Ha Laser Disk Co
Young and Dangerous 2:Action, Adventure:IIB:99:Mei Ha Laser Disk Co
Young and Dangerous 3:Action, Adventure:II:98:Universe Laser & Video Co
Young and Dangerous 4:Action, Adventure:III:109:Mei Ha Laser Disk Co
Young and Dangerous 5:Action, Adventure:IIB:115:Universe Laser & Video Co
Young and Dangerous Prequel:Action, Adventure:III:115:Universe Laser & Video Co
since it's basically the same in functionality as a "foreach" loop.
2) I don't see anything wrong with the above part, except that I don't know if the parenthesis around <MOVIELIST> matter, since I've never used them. I've always coded:
while <MOVIELIST> {
Also, you may need to take that semicolon out which follows the bracket that closes the while loop.
Code:
while (<MOVIELIST> ) {
...
}; # this semicolon may be causing the error
3) I'm curious - lines such as:
td(['$TITLE' , '$GENRE' , '$RATEING' , '$TIME' , '$PROD_CO'])
are you passing these values to a function called td() ?
I have reviewed many examples on-line about running another process (either PERL or shell command or a program), but do not find any usefull for my needs way. (Reviewed and not useful the system(), 'back ticks', exec() and open())
I would like to run another PERL-script from first one, not... (1 Reply)
Not sure what I am doing wrong here, but I can print the list with no issue. Just a blank screen with the 'do'.
#!/usr/bin/perl
open FILE, "upslist.txt";
while ($line=<FILE>){
if ($line=~/^(.*?),(.*?)$/){
#print "ups:$1 string:$2\n";
do 'check_snmp_mgeups-0.1.pl -H $1 -C $2';
} ... (1 Reply)
Hi All,
I am aware that html tags can be embedded in cgi script as below.. In the same way is it possible to embed the below javascript in perl cgi script ??
print("<form action="action.htm" method="post" onSubmit="return submitForm(this.Submitbutton)">");
print("<input type = "text"... (1 Reply)
Hi Folks,
I have 2 perl scripts and I need to execute 2nd perl script from the 1st perl script in WINDOWS.
In the 1st perl script that I had, I am calling the 2nd script
main.pl
===========
print "This is my main script\n";
`perl C:\\Users\\sripathg\\Desktop\\scripts\\hi.pl`;
... (3 Replies)
I am trying to run a perl script which needs input arguments from a parent perl script, but doesn't seem to work. Appreciate your help in this regard.
From parent.pl
$input1=123;
$input2=abc;
I tried calling it with
system("/usr/bin/perl child.pl $input1 $input2");
and
`perl... (1 Reply)
Hi all,
Not sure if this should be in the programming forum, but I believe it will get more response under the Shell Programming and Scripting FORUM.
Am trying to write a customized df script in Perl and need some help with regards to using arrays and file handlers.
At the moment am... (3 Replies)
How can i print the output of a perl script on a unix console and redirect the same in a log file under same directory simultaneously ?
Like in Shell script, we use tee, is there anything in Perl or any other option ? (2 Replies)
so in unix this command works works and shows me a list of directories
find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt
but when i try running a perl script to run this command
my $query = 'find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt';... (2 Replies)
I am trying to use a script to replace the header of each file, whose filename are stored within the array $test, using the sed command within a Perl script as follows:
$count = 0;
while ( $count < $#test )
{
`sed -e 's/BIOGRF 321/BIOGRF 332/g' ${test} > 0`;
`cat 0 >... (2 Replies)
I have a question regarding running perl in the current process.
I shall demonstrate with an example.
Look at this.
sh-2.05b$ pwd
/tmp
sh-2.05b$ cat test.sh
#! /bin/sh
cd /etc
sh-2.05b$ ./test.sh
sh-2.05b$ pwd
/tmp
sh-2.05b$ . ./test.sh
sh-2.05b$ pwd
/etc
sh-2.05b$
So... (10 Replies)