boa、cgi组合利用html到cgi的实现代码
1、代码部分:
index.html:
<html> <head><title>CGI登陆</title></head> <body> <form name="login" action="../cgi-bin/login.cgi">姓名:<input type="text" name="name" /> <br/>密码:<input type="password" name="pwd" /> <br/>确定:<input type="submit" value="登陆" /> </form> </body> </html>
login.c
#include<stdio.h> #include<stdlib.h> int main() { char *date; char name[50],pwd[20]; printf("content-type:text/html;charset=gb2312\n\n"); printf("<TITLE>登陆结果</TITLE>"); printf("<H3>登陆结果</h3>"); date=getenv("QUERY_STRING"); if(date==NULL) printf("<p>错误:数据没有被输入或数据传输发生错误</p>"); else { sscanf(date,"name=%[^&]&pwd=%s",name,pwd); printf("<p>name=%s</p>",name); printf("<p>pwd=%s</p>",pwd); printf("%s",date); } return 0; }
2、操作流程:
将index.html拷贝到先前我们创建的/home/boa/www目录下;
执行#gcc login.c -o login.cgi(在PC平台)生成执行文件login.cgi;
执行#arm-linux-gcc login.c -o login.cgi -static(在ARM平台)生成执行文件login.cgi;
并将login.cgi拷贝到前几节创建的/home/boa/cgi-bin目录下
执行#./boa
在浏览器地址栏输入http://192.168.1.101回车,产生如下图所示:
在姓名和密码分别输入值,点击登录按钮,进入如下界面: