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:[EMAIL PROTECTED]
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


Reply via email to