Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re: How to debug CGI scripts?

by eXile (Priest)
on Aug 26, 2006 at 17:27 UTC ( #569819=note: print w/ replies, xml ) Need Help??

in reply to How to debug CGI scripts?

I second (or third ..) the commandline debugging. You can add parameters to a script using CGI like this:

# arg1=value1 arg2=value2 arg3=value3

A nice trick I've learned is that you can use the -t test operator (tests if stdin is a terminal) to do command line debugging that won't show up if your script is ran on a webserver, something like:

#!/usr/bin/env perl use strict; use warnings; use CGI qw(param header); $|=1; my $cgi = new CGI; my @params = $cgi->param(); if (-t) { print "cmdline mode!\n"; } else { print $cgi->header(); } my $fmt; if (-t) { $fmt = "%s:%s\n"; } else { $fmt = "%s:%s<br/>\n"; } foreach my $p (@params) { # normally you'd make sure stuff is untainted here # but this is for demo purposes so I left it out printf($fmt, $p, $cgi->param($p)); }

Comment on Re: How to debug CGI scripts?
Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://569819]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (6)
As of 2016-02-13 02:37 GMT
Find Nodes?
    Voting Booth?

    How many photographs, souvenirs, artworks, trophies or other decorative objects are displayed in your home?

    Results (417 votes), past polls