我是Python和这个论坛的新手。所以我会尽力解释我的问题 我正在尝试将复选框的结果与SQLite数据库中的字段中的相应数据一起显示。我进入我的代码,如果我只是“打印精选书”我得到复选框结果,但为了从其他字段字段中获取相应的数据,我有以下代码。我不确定我做错了什么。我的代码如下。 “for”循环内的所有内容都不会打印
import sys, cgi, cgitb, sqlite3
# Create instance of FieldStorage
form = cgi.FieldStorage()
conn = sqlite3.connect('battleofthebooks.db')
c = conn.cursor()
value = form.getlist('selectedbook')
selectedbook = "<br/><br />".join(sorted(value))
print "Content-Type: text/html\r\n\r\n"
print "<html>"
print "<head>"
print "<title>Battle of the Books</title>"
print "</head>"
print "<body>"
print "<h3>You have chosen the following books:</h3>"
print selectedbook
TITLE = ""
for row in c.execute("SELECT * FROM BOBBOOKLIST where TITLE=(?)", (TITLE, )):
print selectedbook
print row[2]
print "<br />"
print row[3]
print "<br />"
print "Books in Stock: ", row[4]
print "<br />"
答案 0 :(得分:0)
啊,忠实的c.execute操作。好。给出
的印刷品print c.execute("SELECT * FROM BOBBOOKLIST where TITLE=(?)", (TITLE, ))
那时你会知道答案。触发c.execute时,数据为新数据,光标不再对旧数据有效。
您始终可以将c.execute的值存储到变量中,然后在for循环中迭代该变量。