----- Original Message ----- From: "vl" <[EMAIL PROTECTED]>
To: <zope@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


_______________________________________________
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to