in reply to Accessing CGI objects from within a 'require'-ed file?
You may want to try checking permissions. Also check linefeeds of you're moving the file back and forth between Windows and Unix (some ftp clients don't convert them).
I just copied both of your code snippets into two separate files and hit it with my browser and it worked. I added some parameters to the query string, and got the outputPost data printing too.
test.cgi:
functions.pl:#!/usr/bin/perl -w use strict; use CGI; use CGI::Carp qw(fatalsToBrowser); require "functions.pl"; # define a hash to contain any "global" objects or variables our %GLOBAL = ( 'query' => '', 'test' => 'foobar!' ); $GLOBAL{'query'} = new CGI; print CGI::header(); outputTest(); outputPOST();
Hit the browser with http://192.168.1.102/test/test.cgi:sub outputTest { print $main::GLOBAL{'test'}; } sub outputPOST { print $main::GLOBAL{'query'}->Vars; } 1;
Hit the browser with http://192.168.1.102/test/test.cgi?myvar=haha:foobar!
foobar!myvarhaha
|
---|
In Section
Seekers of Perl Wisdom