Hi. Last month i had some questions about uploading PDF's in a Catalyst app, 
and J. Shirley gave me some helpful advice. I got it working, or so i thought, 
and then put the project aside as the users werent ready for it.

I just got back to it and i see that theres some kind of problem. The PDF's 
when displayed in my app are mangled; they are visible but there are display 
problems with them (parts cut off, or the image shifted). I dont know if it was 
like this originally and i just didnt notice, or if something has changed, but 
i dont know where to look and would be greatful for a push in the right 
direction.

Im storing them in a MySQL database, with the PDF field a MEDIUMBLOB so large 
enough for a 16M file.

My upload code is basically:

my $upload = $c->request->upload('document');
my $document = $c->model->create({ document => $upload->slurp,
                                   type => $upload->type,
                                   filename => $upload->basename});

And then my display code is:

# $document is already grabbed from the database
$c->res->output($document); # overloaded to stringify to $document->document
$c->res->headers->content_type($document->type);
$c->res->headers->header('Content-Disposition' => 'attachment; 
filename=".$document->filename);

(As another question, is this the right way to get the filename to the browser? 
The docs for HTTP::Headers didnt say anything about this.)

Theres a length difference when i download. A test file i uploaded is 165681 
bytes, but when i upload and save it to the database, and then display the file 
from my app and save it, its 165685 bytes--four more.

What should i be looking at to try to figure this out?

Thanks.

Jen


      

_______________________________________________
List: [email protected]
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/

Reply via email to