El Jue 14 Mar 2002 12:12, Vuillemot, Ward W escribió:
> I have searched off and on for the past 3 weeks for a solution to my
> problem.  I am at wits end. . .and thought I would finally ask the
> mailinglist.
>
> I had a set of CGI scripts that worked without problem.  I began the
> process about 4 weeks ago of moving them to mod_perl.  The suite of scripts
> are handled as their own perlHandler collection.  One of the scripts has a
> form where a user can either enter data directly, or indicate a file of
> equivalent data.
>
> When I use the form to POST without any enctype and if you enter directly
> into the form things work correctly.  That is, the data is "massaged" and
> sent back to you as downloadable file.  Of course, this form does not
> handle file uploads.
>
> Now, I change nothing more than the form enctype to "multipart/data-form".
> Now, regardless of how the data is presented in the form (e.g. directly or
> via file upload) the browser tries to refresh the screen with the web-page
> (which it should not since its only response is to send to the client a
> file to download).  However, the web page does not get completely sent, and
> consistently stops in the middle of the send.
>
> I have been using the POST2GET snippet to help make the post more
> persistent.  In short, my httpd.conf file looks like:
>
> #
> # **********************
> # ** MOD PERL CHANGES **
> # **********************
> # limit POSTS so that they get processed properly
> <Limit POST>
>   PerlInitHandler POST2GET
> </Limit>
> # force reloading of modules on restart
> PerlFreshRestart on
> # Perl module primitive mother load on start/restart
> #PerlRequire lib/perl/startup.pl
> # FLOE application (mod_perl)
> PerlModule Apache::DBI
> PerlModule floeApp
> <Location /floeApp>
>   SetHandler perl-script
>   PerlHandler floeApp
>   PerlSendHeader On
> </Location>
>
> And the relevant two snippets of code from the script are:
>       ## process incoming
>       # if submitted
>       my %hash = undef;
>       my $initialList = $q->param('initialList') || '';
>       my $upload = $q->upload || undef;
>       my $fh = $upload->fh if defined($upload);
>       if (defined($upload) && $upload) {
>               $initialList = '';
>               while (<$fh>) {
>                       $initialList .= $_;
>               }
>       }
>
>       ## some processing is done to the POST'ed data
>       ## and eventually. . .
>
>       ## send file to client
>       print   "Content-type: text/plain\n";
>               print   "Content-Disposition: attachment;
> filename=list.txt\n\n";
>
>       foreach my $value (sort keys %$hash) {
>               chomp($value);
>               next unless ($value);
>               print "$hash->{$value}$CRLF$value$CRLF";
>       }
>
>       exit;
>
>
> Any ideas?  I would love to get this solved so I can get back to developing
> useful scripts.  :)
>
> Thanks!
> Ward
>
> Ward W. Vuillemot
> Boeing Flight Operations Engineering
> Performance Software
> tel +01 206-662-8667 * fax +01 206-662-7612
> [EMAIL PROTECTED]

just to test, if you trie:

perl -MCGI -e 'print CGI::start_multipart_form()'

you get

<form method="post" action="/-e" enctype="multipart/form-data">

and not:

multipart/data-form

as you write

May be you spelled it wrong on he message, but this may be your problem.

Hans


Reply via email to