perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Fred Moyer <f...@redhotpenguin.com>
Subject Re: Apache2::Upload and End of file found error Part 2
Date Thu, 07 Dec 2006 07:33:08 GMT
cfaust-dougot wrote:
> Folks,
>  
> I'm still trying to figure out what to do about this upload problem.. I've figured out
that somehow creating a new CGI object is causing the problem but I have no idea how or what
to do.
>  
> Below is a bare bone test upload script, if you comment out the "my $CGI = new CGI();"
in the sub "init_global_vals" then the update works fine, if its uncommented then the server
error of "End of file found" happens.
>  
> http://208.3.90.212/test.pm.txt
>  
> I have no idea how one relates to the other, any ideas?

I'm not sure why you would want a CGI object shared between requests but 
my guess is that it's doing something strange as a result and I can't 
see any advantage to that approach.  If you don't have that $CGI object 
around and it works fine that might be telling you that it's causing 
trouble and not helping.

A few other comments that might keep you from running into other problems:

1) 'perldoc vars' - use 'our' in favor of 'use vars'

2) don't use global variables unless you really need them and they serve 
a useful purpose ($template_header and $template_footer globals are ok 
since they are stateless, $CGI objects are not)

3) try the latest version of libapreq, 2.08.  I don't think it will fix 
your existing problem (which the $CGI seems to be the root of), but 
there have been a number of bug fixes since the release you're using.

4) Take a look at Apache::DBI instead of keeping $db in a global -
$db = ISMH::ConnectDBUser->connect_to_db();

HTH  - I think the simple issue to fix your problem is don't use a 
global $CGI object FWIW

>  
> Thanks
> -Chris
> 
> ________________________________
> 
> From: cfaust-dougot [mailto:cfaust@doyougot.com]
> Sent: Tue 12/5/2006 1:28 PM
> To: modperl@perl.apache.org
> Subject: Apache2::Upload and End of file found error
> 
> 
> Hi,
>  
> I'm trying to use Apache2::Upload as shown in the examples and the only thing I get is
"End of file found" in the error log.
>  
> I've found quite a few messages on the subject, but I'm not using Mason and I'm using
libapreq2.0.7.1.
>  
> I've tried the fh and slurp methods and both are the same.
>  
> Code I've been playing with
>  
>  my $req = Apache2::Request->new($r);
>  my $upload = $req->upload('new_image');
>  my $size = $upload->size;
>  my $uploaded_file = $upload->fh;
>  #$upload->slurp($uploaded_file);
>  #$upload->link($uploaded_photo_name) or
>     #  die sprintf "link from '%s' failed: $!", $upload->tempname;
>  
> Server Info
> Apache/2.0.55 (Ubuntu) PHP/5.1.6 mod_apreq2-20051231/2.5.7 mod_perl/2.0.2 Perl/v5.8.8
configured
>  
> TIA
> 


Mime
View raw message