嵌入式CGI c语言 获取form表单的数据(注册登录程序)

继//www.iganlei.cn/embed/304.htm
嵌入式CGI c语言 获取form表单的数据,,修改可以用作登录验证,注册也是一样。
百度了一些cgi知识:
http://wenku.baidu.com/view/18c1b7a40029bd64783e2c1c.html
http://wenku.baidu.com/view/9930e67302768e9951e73838.html
http://wenku.baidu.com/view/b36af14533687e21af45a922.html

贴出代码:
login.c

  1. #include<stdio.h>  
  2. #include<stdlib.h>  
  3. #include <string.h>  
  4. int main(){  
  5.     int i,len=0;  
  6.     char poststr[100];  
  7.     char m[10],n[10];  
  8.     char *req_method;     
  9.     printf("Content-type:text/html\n\n");  
  10.     printf("<meta charset=\"utf-8\">");  
  11.     printf("<title>检测页面</title>");  
  12.     printf("<h1>将post过来的和数据库中的信息进行比对即可</h11>");  
  13.     req_method = getenv("REQUEST_METHOD");   
  14.      if (!strcmp(req_method, "POST"))  
  15.        len=atoi(getenv("CONTENT_LENGTH"));  
  16.   
  17.     printf("传过来的字符数: %d \n",len);  
  18.         fgets(poststr,len+1,stdin);  
  19.     printf("显示post过来的数据:<br /><br />");  
  20.     printf("%s\n",&poststr);  
  21.     return 0;  
  22. }  

login.html

  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4. <meta charset="utf-8">  
  5. <title>test cgi post</title>  
  6. </head>  
  7. <body>  
  8.         <form action="login.cgi" method="post" name="form1">  
  9.                 用户名<input type="text" name="uname" id="uname"/><br />  
  10.                 密码<input type="text" name="passwd" id="passwd"/>  
  11.                 <input type="submit" name="submit"  value="login"/>  
  12.         </form>  
  13. </body>  
  14. </html>  

将login.c编译生成cgi

  1. arm-linux-gcc login.c  -o login.cgi  

lighttpd cig c form 相关下载提取密码: dcgw
[url href="http://pan.baidu.com/s/1jAYY4"]cgi post[/url]

,在rz到板子上,运行截图如下。
loginhcgi

loginhtml

login_html

login_cgi

login--html

login--cgi

将post过来的数据和数据库比对就能实现登录验证,把数据存到数据库实现注册。

未经允许不得转载:ganlei的个人博客 » 嵌入式CGI c语言 获取form表单的数据(注册登录程序)

赞 (1)
分享到:更多 ()