Prob. w/ Script Posting Last Value

Gabriel Genellina gagsl-py2 at yahoo.com.ar
Mon Apr 21 01:45:39 EDT 2008


En Thu, 17 Apr 2008 15:51:43 -0300, Victor Subervi <victorsubervi at gmail.com> escribió:

> On Thu, Apr 17, 2008 at 1:07 PM, Steve Holden <steve at holdenweb.com> wrote:
>>  Victor Subervi wrote:
>>
>> > Gabriel provided a lovely script for showing images which I am modifying
>> > for my needs. I have the following line:
>> >  print '<img src="getpic.py?id=%d&x=%d"><br /><br /></td>\n' % (d, y)
>> > where the correct values are entered for the variables, and those values
>> > increment (already tested). Here is the slightly modified script it calls:
>> >   #!/usr/local/bin/python
>> > import cgitb; cgitb.enable()
>> > import MySQLdb
>> > import cgi
>> > form = cgi.FieldStorage()
>> > picid = int(form["id"].value)
>> > x = int(form["x"].value)
>> > pic = str(x)
>> > print 'Content-Type: text/html'
>> > db = MySQLdb.connect(host=host, user=user, passwd=passwd, db=db)
>> > cursor= db.cursor()
>> > sql = "select " + pic + " from products where id='" + str(picid) + "';"
>> > cursor.execute(sql)
>> > content = cursor.fetchall()[0][0].tostring()
>> > cursor.close()
>> > print 'Content-Type: image/jpeg\r\nContent-Length: %s\n' % len(content)
>> > print content
>> >  I need to make it so that it will show all my images, not just the last
>> > one. Suggestions, please.

That 'Content-Type: text/html' is wrong, you're returning an image here.
Are you sure that *different* pictures are stored in the database? Perhaps there was an error and all columns have the same picture.
Also make sure you're not seeing a cached image in your browser.


>> > In your "page generator" page, replace
>>
>> print '<img src="getpic.py?id=%d&x=%d"><br /><br /></td>\n' % (d, y)
>>
>> by
>>
>> for d, y in (results of some DB query to get d and y for each image):
>>  print '<img src="getpic.py?id=%d&x=%d"><br /><br /></td>\n' % (d, y)
>
> Well, I just tried this:
>
> #! /usr/bin/python
> print """Content-type: text/html
> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <html>
> <head>
> <title></title>
> </head>
> <body>
> <input type='hidden' name='db' value='benobeno_bre' />
> """
> y = 1
> for d in 2, 12:
>   while y < 12:
>     print '<img src="getpic.py?id=%d&x=%d"><br /><br /></td>\n' % (d, y)
>     y += 1
> print"""
> </body>
> </html>"""
> and it printed the same image over and over again :(

An empty line is missing after Content-Type and before the actual content.
Look at the source and be sure the src= attribute is generated correctly.

-- 
Gabriel Genellina




More information about the Python-list mailing list