#!/usr/bin/perl -w ... my $fname = $q->param('fname'); my $lname = $q->param('lname'); ... sub foo { my $name = $fname.$lname; ... } #### sub handler { ... my $fname = $q->param('fname'); my $lname = $q->param('lname'); ... sub foo { my $name = $fname.$lname; ... } } #### sub OUTER { my $x if 0; $x = 0; print "OUTER: \$x is now: ", ++$x, $/; sub INNER { print "INNER: \$x is now: ", ++$x, $/; } } OUTER;INNER;INNER; OUTER;INNER;INNER; ## results OUTER: $x is now: 0 INNER: $x is now: 1 INNER: $x is now: 2 OUTER: $x is now: 0 INNER: $x is now: 1 INNER: $x is now: 2 #### ... my $fname : static = $q->param('fname'); my $lname : static = $q->param('lname'); ...