<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                我還是按照這個程序的順序來講解,方便大家理解 一點,在這里得說明下boa服務器只是一個平臺,只要搭建好了就可以不用去管它,我們只需要寫cgi-bin和html文件,我們在上一篇文章中網頁已經做好了,當我們點擊提交按鈕的時候,程序會去執行/etc/boa/cgi-bin目錄下的login.cgi腳本文件,(為什么是這個文件,我們在上篇文章已經制定了這個腳本來處理數據),下面我們就來寫這個腳本程序。 login.c文件: ~~~ #include <stdio.h> #include <stdlib.h> int main(void) { char *str_len=NULL; int len=0; char buf[100]=""; char user[20]=""; char passwd[20]=""; ~~~ printf("%s\r\n\r\n","Content-Type:text/html"); ? /?*?固定格式,不用去管他,但是注意這條語句前后要空兩行?*?/ printf("<html>\n<head>\n<title>CGI3:登錄結果</title></head><br>\n"); /?*? 可以用printf打印網頁,但是要按照 html格式打印,也可以網頁保存在一個數組中來打印,后面文章中將會講解,這里是打印新網頁的標題?*?/ str_len = getenv("CONTENT_LENGTH");/?*? 這個很重要獲取環境變量,是獲取我們開始登陸信息 ?*?/ if( (str_len==NULL) ?|| (sscanf(str_len, "%d", &len)!=1) || (len>80) ) ?/?*?這里注意下sscanf的用法?*?/ printf("sorry!error!"); fgets(buf, len+1, stdin); sscanf(buf, "name=%[^&]&password=%s", user,passwd); ? /?*?把用戶名保存在user中,把賬戶保存在passwd,觀察這里的name,password。這里不是和網頁里面設置的變量對應起來了么,這里只是提取出來吧了?*?/ if( (strncmp(user,"root",4)==0) && (strncmp(passwd, "111111", 6)==0) )/* 比較登陸用戶是否正確 ?*?/ { printf("<script language=\"JavaScript\">self.location='main.cgi';</script>");/?*? 調用一個新的main.cgi腳本 ?*?/ } else printf("Sorry! 用戶名或密碼錯誤!"); return 0; } 編譯:?#??arm-linux-gcc login.c -o login.cgi ?(后面我會統一寫進一個Makefile中) 在這一章可以這樣測試,你在if( (strncmp(user,"root",4)==0) && (strncmp(passwd, "111111", 6)==0) )下面添加打印語句密碼正確,和密碼錯誤測試。注釋掉打印腳本的那條語句,因為你都還沒有寫這個腳本,你怎么跳轉呢。一定要把腳本文件復制到/etc/boa/cgi-bin目錄下面,這是我們之前搭建boa服務器時候規定的文件加。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看