一个cgi的例子

Posted zh1164

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个cgi的例子相关的知识,希望对你有一定的参考价值。

cgi的详细资料可以参考 http://httpd.apache.org/docs/2.4/howto/cgi.html

下面是一个python实现的cgi脚本,里面体现了一些cgi的用法,使用其他脚本实现也都类似。Python可能有一些更简单的方式,比如cgi库。

这个例子能够处理get和post两种请求,并获取两种请求的参数。

#!/usr/bin/python
#coding=utf-8

import psycopg2
import os
import sys

#返回信息中必须有Content-type
print "Content-type: text/html\n\n"

#通过环境变量REQUEST_METHOD获得请求方法
if os.environ["REQUEST_METHOD"] == "GET":
    #cgi get请求通过系统变量 QUERY_STRING 来获取参数
    limit = os.environ["QUERY_STRING"].split("=")[1]
else:
    #cgi post请求从标准输入中获得参数
    limit =  sys.stdin.readline().split("=")[1]

#从数据库中读取数据
conn = psycopg2.connect(database="svmanager", user="svmanager", password="bT9Mkkhu7XBkz7uBa1UNHx", host="192.168.1.56", port="5432")
print "=========================="

cur = conn.cursor()

cur.execute("SELECT vm_name , vm_type from  vms limit %s offset 0;" % limit )
rows = cur.fetchall()

print "<table style=‘border:1px solid black‘>"
for row in rows:
   print "<tr><td>", row[0], "</td><td>" , row[1]  ,"</td></tr>"
print "</table>"

print "========================"
conn.close() 

 

以上是关于一个cgi的例子的主要内容,如果未能解决你的问题,请参考以下文章

分享几个实用的代码片段(附代码例子)

分享几个实用的代码片段(附代码例子)

Perl CGI 日期和时间选择器,自动填充当前日期和时间

如何创建片段以重复变量编号中的代码行

在c语言写的cgi程序中怎么获取URL传递的参数

为啥这个代码片段说包含错误?