これは私の最初の質問です。
ユーザーに自分の画像をデータベースにアップロードさせています。その画像は BLOB として保存されます。
私はこれを成功させることができました。データベースにMySQLを使用しています。
私が問題を抱えているのは、その BLOB が呼び出されたときに、その BLOB を Web サイトに画像として表示することです。
現在、バイナリ データのみ、多くの奇妙なシンボルが表示されています。HTTPヘッダーに問題があると思います。現在、その中にあります:
print "Content-Type: text/html"
私はもう試した:
print "Content-Type: image/jpeg"
Python を使用してデータベースに接続し、HTML を記述しています。
編集:コード:
def showFile():
# do SQL to retrieve blob where filename
conn, cursor = getConnectionAndCursor()
sql = """
select data
from upload
where id=1
"""
cursor.execute(sql)
data = cursor.fetchone()
blob = data[0]
print "<hr>"
print "This is what I'm trying"
print """<img src="data:image/jpeg;base64,%s/>""" % data
######################################################################
if __name__ == "__main__":
form = cgi.FieldStorage()
if "show_file" in form:
print "Content-Type: text/html"
print
printHeaders("Image upload example")
showFile()
printFooter()