我在學習如何使用Python創建動態網頁內容。但問題是,當我嘗試執行mySQL查詢時,絕對沒有任何反應。沒有錯誤信息......當我導入啓用連接到數據庫的模塊時,它看起來像腳本停止運行。用Python編寫網頁的服務器端腳本:沒有任何反應
當我嘗試從命令行運行它時,這確實如我所料。
#!/usr/bin/python
print "Content-Type: text/xml"
print
#if I type, for example, print "<b>test</b>" here, it appears in the browser window
#msql contains the credentials for connecting to database
#it is NOT in public_html
import msql
#no print instructions after this point are followed
connex=msql.msqlConn()
db=msql.MySQLdb
cursor=connex.cursor(db.cursors.DictCursor)
cursor.execute("SELECT * FROM userActions")
#run the query
xmlOutput=""
rows=cursor.fetchall()
#output the results
for row in rows:
xmlOutput+="<action>"
xmlOutput+="<actionId>"+str(row["actionId"])+"</actionId>"
xmlOutput+="<userId>"+str(row["userId"])+"</userId>"
xmlOutput+="<actText>"+str(row["action"])+"</actText>"
xmlOutput+="<date>"+str(row["dateStamp"])+"</date>"
xmlOutput+="</action>"
xmlOutput="<list>"+xmlOutput+"</list>"
print xmlOutput
這將是我第一次刺穿此,所以它只是有理由認爲這應該工作。儘管如此,我沒有發現任何網絡上會有其他建議。
通過字符串連接構建XML(或HTML)聽起來像是一個非常糟糕的主意...... – delnan 2010-11-03 20:06:30
這是什麼庫? mSQL的?從來沒有聽說過。 – 2010-11-03 20:12:40
當你從命令行運行它時會發生什麼?我的猜測是,你的腳本在某個時候出現了一個錯誤,並且這個錯誤被髮送到標準錯誤,所以你沒有在瀏覽器中看到它。暫時添加'import sys; sys.stderr = sys.stdout'會導致任何錯誤消息去瀏覽器。 – kindall 2010-11-03 20:26:58