Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Returning form data with Apache::Request Buffer Module

by IOrdy (Friar)
on Nov 27, 2001 at 07:34 UTC ( #127718=perlquestion: print w/replies, xml ) Need Help??

IOrdy has asked for the wisdom of the Perl Monks concerning the following question:

Thanks to all perlmonks for there help so far, but I have another problem.

I wrote two modules so that I could swap my code more easily from Apache::Request.pm to CGI.pm or back.

The problem at the moment is that the module returns variables entered into the command line but no variables posted from form data. Included below is the code for the module, the code that calls the module and an example of my form.
# # Apache::Request Buffer Module # package iXML::Buffer::Apache; use strict; use Apache; use Apache::Request; use Apache::Debug; use CGI::Carp qw(fatalsToBrowser); sub new { my $proto = shift; my $class = ref($proto) || $proto; my $self = { 'r' => Apache->request, 'html' => undef, 'redir' => undef, }; bless($self, $class); $self->{apr} = Apache::Request->new( $self->{r}, ); return $self; } sub html { my ($self, $html) = @_; $self->{html} = $html; } sub redir { my ($self, $redir) = @_; $self->{redir} = $redir; } sub output { my $self = shift; if ($self->{redir}) { $self->{apr}->status(302); $self->{apr}->header_out('Location', $self->{redir}); $self->{apr}->send_http_header('text/html'); $self->{apr}->print($self->{html}); }else{ $self->{apr}->send_http_header('text/html'); $self->{apr}->print($self->{html}); } } sub param { my ($self) = shift; return $self->{apr}->param; } sub debug { my ($self) = shift; Apache::Debug::dump($self->{r}, 'SERVER RESPONSE'); } 1;
# # Code that calls the buffer and requests params; # use strict; use iXML::Buffer::Apache; $Buffer = iXML::Buffer::Apache->new(); $Params = $Buffer->param;
# # Sample form code (my script uses HTML::Template # but I filled in the stuff that counts. # <form method="post" action="admin.pl?cmd=save&file=foobar" enctype="mu +ltipart/form-data"> <table width="100%" border="0" cellspacing="1" cellpadding="0" class +="aplBodyC"> <tr> <td colspan="2" class="apeHeadingCTS"><!-- tmpl_var name="headin +g" --></td> </tr> <tr> <td nowrap class="apeListTitlesCTS" valign="top">page name</td> <td nowrap class="apeBodyCTS" width="100%" valign="top"> <input type="text" name="page" class="apeFormObjectCTS" size=" +60" maxlength="60" value="<!-- tmpl_var escape=html name="frm_page" - +->"> </td> </tr> <tr> <td class="apeListTitlesCTS">save</td> <td class="apeBodyCTS" valign="top"><input type="submit" name="S +ubmit" value="save changes" class="apeFormButtonCTS"></td> </tr> </table> </form>

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://127718]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (4)
As of 2023-02-08 08:00 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I prefer not to run the latest version of Perl because:







    Results (40 votes). Check out past polls.

    Notices?