我是Python和MySQL的新手,这是我的第一个Stack问题。因此,如果我遗漏了一些明显的内容,请提前道歉。但是,在问之前,我确实确实尝试过对此进行研究。
我正在尝试学习Python,MySQL和CGI脚本的基础知识。为此,我一直在阅读http://www.tutorialspoint.com/python/python_cgi_programming.htm和http://www.tutorialspoint.com/python/python_database_access.htm上的教程。
我正在尝试让CURL GET或Python Requests GET在测试服务器上调用Python CGI脚本。然后,该Python
CGI脚本将在本地MySQL数据库上执行读取操作,并将结果返回到CURL或Python请求。
我创建的Python CGI脚本将MySQL
Read数据完美输出到远程测试服务器上的终端。但是,它不会将输出返回给CURL或触发CGI脚本的Python请求。
这是我拼凑的Python CGI脚本:
#!/usr/bin/python
import MySQLdb
# Open database connection
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )
# prepare a cursor object using cursor() method
cursor = db.cursor()
# Prepare SQL query to INSERT a record into the database.
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > '%d'" % (1000)
try:
# Execute the SQL command
cursor.execute(sql)
# Fetch all the rows in a list of lists.
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# Now print fetched result
print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \
(fname, lname, age, sex, income )
except:
print "Error: unable to fetch data"
# disconnect from server
db.close()
我的 猜测
是,我需要以某种方式将数据从SQL查询传递回Python或通过某种Return或Output语句传递回请求过程。但是,我为研究此问题所做的所有最大努力都无济于事。谁能指出我正确的方向?非常感谢您的帮助!
马克:-)
首先,按照您链接的CGI教程,您需要输出正在使用的内容类型:
print "Content-type: text/plain\r\n\r\n",
如果您至少没有换行符,HTTP客户端会认为您的内容应该是标头的一部分并感到困惑,他们可能会假设您要的文档为空。
接下来,您需要一个CGI服务器。Python附带一个。将您的脚本放在一个名为的子目录中,cgi-bin
然后运行此命令(从父目录):
python -m CGIHTTPServer
呼叫网址如下所示:
curl http://localhost:8000/cgi-bin/cgitest.py
抱歉打扰了,我已经熬夜了。有人能回顾一下为什么这个脚本没有返回任何内容吗:
问题内容: 我想从PHP脚本返回JSON。 我只是回应结果吗?我必须设置标题吗? 问题答案: 通常,没有它会没事,但是您可以并且应该设置Content-Type标头: 如果不使用特定的框架,通常会允许一些请求参数来修改输出行为。通常,为了快速进行故障排除,不发送标头,或者有时将数据有效载荷print_r盯着它很有用(尽管在大多数情况下,它不是必需的)。
问题内容: 我想从bash脚本执行python脚本,并且要将python脚本的输出存储在变量中。 在我的python脚本中,我将一些内容打印到屏幕上,最后我返回一个带有以下内容的字符串: 在我的bash脚本中,我执行了以下操作: 但是,当我检查with的值时,我得到了Python脚本打印到屏幕上的所有内容,但 没有 返回值! 我应该怎么做? 编辑:我需要该字符串,因为它告诉我Python脚本创建的
这三个函数的返回类型提示有什么不同吗? 他们都应该有< code>- 提问的动机是这个问题,这个很好的答案,以及我正在学习类型提示的事实。
主要内容:示例,执行测试标签呈现类型为“”的“”类型的HTML元素。此标签将外部JavaScript文件添加到JSF页面。 以下JSF标签 - 被渲染成以下HTML代码 - 示例 以下是文件: 中的代码 - 以下是文件: 中的代码 - 以下是文件: 中的代码 - 执行测试 使用 NetBeans 创建一个Web工程,名称为:Outputscript,并使用以上代码。运行项目,Tomcat启动完成后,在浏览器地址栏中输入以
问题内容: 我正在显示项目ID和标题。还有一个链接“显示此成员的项目”。单击它会显示该用户的项目。为此,我使用ajax。有一个脚本可以检测单击复选框。此选项对于第一个列出的项目正常工作,但对ajax返回的项目无效 脚本代码和ajax是 getdetails.php代码是 问题答案: 使用此脚本