我理解你的问题是生成动态网页是吧。一般动态的HTML是通过支持CGI 即 (通用网关接口)的语言生成的。例如 PHP ASP PYTHON RUBY等。当然前段的JS 也可以通过DOM 生成动态HTML
所谓HTML实际上是一种标记语言。而后端脚本语言通常可以控制 终端设备输出显示。这样利用输出加上通用网关接口就可以实现 动态的HTML输出(在这里实际上用户浏览器就是一个终端。)
一般后台语言生成HTML都是通过模板实现 例如PYTHON
# ! / u s r / b i n / e n v p y t h o nimport cgi
reshtml = '''Content-Type: text/html\n
<HTML><HEAD><TITLE> 7 Friends CGI Demo (dynamic screen)
</TITLE></HEAD>
<BODY><H3>Friends list for: <I>%s</I></H3>
Your name is: <B>%s</B><P>
You have <B>%s</B> friends.
</BODY></HTML>'''
form = cgi.FieldStorage()
who = form['person'].value howmany = form['howmany'].value print reshtml %
(who, who, howmany)
只用过cgic,内部跳转在cgiMain函数中使用类似fprintf(cgiOut, "<script type=\"text/javascript\">window.location.href='mfgtool.cgi'</script>\n</HEAD>\n")这样可以跳转到你想到的页面。和Web服务器软件没关系,不管是apache还是其他,都是一样跳转,只要路径一致。处理表单,在cgic中提供了函数接口,可以调用,比如的到客户端传过来的字符串:
//enter flag
cgiFormString("flag", flag, 32)
其中"flag"为客户端post过来的data键值对的键,flag是cgi中定义的char数组,用于接收post过来的键值对的值。这样就得到了客户端传递过来的值。
cgi输出到浏览器其实是加载静态html格式文件,然后读到特定字符,然后将cgi得到的值替换掉特定字符,然后出去到浏览器,进行显示。
至于调用postgreSQL数据库,我不太清楚,但是用C/C++链接数据库是肯定没问题的,这个帮不到你了。
1、Web服务器通过调用CGI程序实现和Web浏览器的交互,也就是CGI程序接受Web浏览器发送给Web服务器的信息,进行处理,将响应结果再回送给Web服务器及Web浏览器。CGI程序一般完成Web网页中表单(Form)数据的处理、数据库查询和实现与传统应用系统的集成等工作。CGI程序可以用任何程序设计语言编写,如Shell脚本语言、Perl、Fortran、Pascal、C语言等。但是用C语言编写的CGI程序具有执行速度快、安全性高(因为C语言程序是编译执行且不可被修改)等特点。CGI接口标准包括标准输入、环境变量、标准输出三部分。2、标准输入CGI程序像其他可执行程序一样,可通过标准输入(stdin)从Web服务器得到输入信息,如Form中的数据,这就是所谓的向CGI程序传递数据的POST方法。这意味着在 *** 作系统命令行状态可执行CGI程序,对CGI程序进行调试。POST方法是常用的方法,本文将以此方法为例,分析CGI程序设计的方法、过程和技巧。
3、环境变量 *** 作系统提供了许多环境变量,它们定义了程序的执行环境,应用程序可以存取它们。Web服务器和CGI接口又另外设置了自己的一些环境变量,用来向CGI程序传递一些重要的参数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)