On Apr 12, 2:44 pm, Steve Holden <[EMAIL PROTECTED]> wrote: > Victor Subervi wrote: > > in line... > > > On Fri, Apr 11, 2008 at 2:05 PM, Steve Holden <[EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED]>> wrote: > > > Victor Subervi wrote: > > > I have worked on this many hours a day for two weeks. If there is an > > > easier way to do it, just take a minute or two and point it out. Have > > > you heard of the Law of Diminishing Returns? I have passed it > > long ago. > > > I no longer want to waste time trying to guess at what you are > > trying to > > > tell me. > > > Victor > > > > On Fri, Apr 11, 2008 at 8:55 AM, Steve Holden > > <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > > > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>> wrote: > > Where you have > > > content = col_fields[0][14].tostring() > > pic = "tmp" + str(i) + ".jpg" > > img = open(pic, "w") > > img.write(content) > > print '<img src="%s"><br /><br />' % pic > > img.close() > > > instead write > > > print content > > > Like this, I presume? > > Yes. You might need to use content.tostring() - I am not familiar with > MySQL blobs. > > > img = open(pic, "w") > > img.write(content) > > print '<td><input type="hidden" name="%s"' % str(x), ' > > value="%s">' % pic > > print content > > # print '<img src="%s"><br /><br /></td>\n' % pic > > Does not work _at_all LOL. You will recall, also, that you once gave me > > a line similar to the one commented out (but without writing then > > opening the file). THAT did not work, either. So now do you see why I am > > frustrated?? > > > Then browse to the URL this program serves and you will see the image > > (assuming you are still sending the image/jpeg content type). > > > Well, as I mentioned before, I am sending text/html because the page, > > like almost all web pages, has a whole lot more content than just > > images. Or, perhaps you are suggesting I build my pages in frames, and > > have a frame for every image. Unsightly! > > Dear Victor: > > If you cannot understand, after being told several times by different > people, that pages with images in them are achieved by multiple HTTP > requests, then there is little I can do to help you. > > > > > Once you > > can see the image, THEN you can write a page that refers to it. Until > > you start serving the image (NOT pseudo-html with image data embedded in > > it) nothing else will work. > > > My solution works just fine, thank you. It is inelegant. But it now > > appears to me, and I dare say rather clearly, that this inelegance is > > the fault of python itself. Perhaps this should be brought to Guido´s > > attention. > > Victor > > You can say it as clearly as you like, but if you say it too loudly you > will make a laughing stock of yourself. > > You surely don't think that a language that supports Zope, TurboGears, > Pylons and Django (to name but the first four that come to mind) is > unsuitable for web programming? > > Please, do yourself a big favor and persist with this until you > understand what you are doing wrong and how to serve dynamic images. It > appears that the learning may be painful, but I guarantee it will be > worthwhile. > > regards > Steve > -- > Steve Holden +1 571 484 6266 +1 800 494 3119 > Holden Web LLC http://www.holdenweb.com/
There _is_ a way to embed image data in HTML that is supported by every major browser. It is ugly. Using the RFC 2397 (http:// www.ietf.org/rfc/rfc2397) spec for data URLs you could go '<img src="data:image/jpg;base64,%s">' % base64.b64encode(image_data) Obviously you need to import the base64 module somewhere in your code and base64-encoded data is about a third larger than it would be otherwise, so embedding anything particularly large is going to be a huge pain and affect page load times pretty badly. -- http://mail.python.org/mailman/listinfo/python-list