[Zope] Viewing images from a form upload

Jonathan dev101 at magma.ca
Tue Jul 11 15:52:12 EDT 2006


----- Original Message ----- 
From: "vl" <admin at vltool.com>
To: <zope at zope.org>
Sent: Tuesday, July 11, 2006 3:07 PM
Subject: [Zope] Viewing images from a form upload


>I am stuck on trying to preview images that are uploaded from a html form.
>
> <form method="POST" action="py_save_new_image" 
> enctype="multipart/form-data">
> <input type="file"  name="file">
> <input type="submit" name="save" value="Upload">
>
> When the form is submited it sends it to a python script that gets the 
> image and sends it to another page to be previewed.  Problem is, I receive 
> and error that the image cannot be displayed.
>
> My python script is below.
>
>     REQUEST=context.REQUEST
>     content_type=file.headers['Content-Type']
>     if content_type.find('image')!=-1:
>         context.REQUEST.RESPONSE.setHeader('Content-Type', 'image/jpg')
>         img = file.read()
>         print context.dtml_select_new_image(context, context.REQUEST, 
> image=img)
>         return printed
>     else:
>         return "error"
>
> I load the image in a dtml method with:
> <dtml-var image>

The dtml-var tag creates an html img tag which your browser then uses to 
make another HTTP call to the server to acquire the image file. This means 
that the image data must be saved on the server (ie. you cannot return the 
image data in the initial response).

So, your process should be:

1) get the image data from the form
2) save an image object somewhere
3) pass back an html img tag with the path/id of the saved image object

hth

Jonathan




More information about the Zope mailing list