[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Pi3Perl CGI-environment emulation
To ease port standard CGI's to Pi3Perl I've made some Perl code to emulate the
standard CGI environment. Here's a short statement how to use it:
use P3PCGI;
sub execute {
    my($obj) = shift;
    my($argc) = shift;
    my($pihttp) = shift;
    my($key);
    my($response);
    # initialize CGI environment
    P3PCGI::init($obj,$argc,$pihttp);
    # print $ENV hash into response
    foreach $key (sort keys %ENV) {
        $response .= sprintf("%s = %s\n", $key, $ENV{$key});
    };
    # append CGI input from buffer or environment to response
    $response .= $ENV{CONTENT_LENGTH} ? $P3PCGI::inbuf : $ENV{QUERY_STRING}; 
};
Known restrictions
==================
The following $ENV keys are hard coded since I don't know how to get them:
$ENV{SERVER_PORT}
$ENV{SERVER_SOFTWARE}
Tried to redirect STDIN to use this handle. Worked good with standard Perl
but with Pi3Perl I got an assertion. Use $P3PCGI::inbuf meanwhile until I
can fix this.
Since I don't wanna spam the mailing list with 3 Perl programs send me
a e-mail to get the stuff. Example program how to iterate through the server
databases also available.
-- 
Have fun with it!
(Any response to enhance my Pi3Perl-work is very welcome)
Holger
---------------------------------------------------------
Holger 'Zimpel' Zimmermann    Contact me:
---------------------------------------------------------
Wendishain                    tel./fax company: on demand
Germany                       tel./fax private: on demand
---------------------------------------------------------
homepage: http://home.t-online.de/home/zimpel/
web server: surf to it from my homepage (online every
            Sunday 20:00-24:00 GMT, start shifted again)
e-Mail:     zimpel@t-online.de
--------------------------------------------------------