我是Python和这个论坛的新手。所以我会尽力解释我的问题。
我试图从SQLite数据库中的字段中获取复选框的结果以及相应的数据。如果我只需要“print selectedbooks”我就可以在我的代码中得到复选框结果,但是为了从其他字段中得到相应的数据,我有下面的代码。我不确定我做错了什么。我的代码在下面。“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 />"
啊,忠实的c。执行操作。好 啊。打印
那你就知道答案了。当触发c.execute时,数据是新的,游标对旧的不再有效。 您可以始终将c.execute的值存储到一个变量中,然后在for循环中迭代该变量
相关问题 更多 >
编程相关推荐