回精華區
作者itoc, 信區: itoc
標題[修正] admutil.c 註冊單增加生日/性別的欄位
時間04/01/11
作者: itoc (核心動力) 看板: itoc
標題: Re: [問題] 生日
時間: 2004/01/11 Sun 15:14:23                           Updated: 2005/11/02

※ 引述《vinnie (心情)》之銘言:
> 跟審核註冊單的時後也要審核生日
> 這個要怎麼寫?

: struct.h:RFORM

typedef struct  /* 註冊表單 (Register From) 256 bytes */
{
  int userno;
  time_t rtime;
  char userid[IDLEN + 1];
  char agent[IDLEN + 1];
- char nouse[20];
+ char year[3];
+ char month[3];
+ char day[3];
+ char sex[3];
+ char nouse[8];
  char career[50];
  char address[60];
  char phone[20];
  char reply[72];
}      RFORM;

: user.c:u_register()

-   getfield(5, 50, rform.career, "服務單位:", "學校系級或單位職稱");
-   getfield(8, 60, rform.address, "目前住址:", "包括寢室或門牌號碼");
-   getfield(11, 20, rform.phone, "連絡電話:", "包括長途撥號區域碼");
+   getfield(5, 50, rform.career, "服務單位:", "學校系級或單位職稱");
+   getfield(7, 60, rform.address, "目前住址:", "包括寢室或門牌號碼");
+   getfield(9, 20, rform.phone, "連絡電話:", "包括長途撥號區域碼");
+   getfield(11, 3, rform.year, "生日:", "民國年");
+   getfield(13, 3, rform.month, "生日:", "月");
+   getfield(15, 3, rform.day, "生日:", "日");
+   getfield(17, 3, rform.sex, "姓別:", "男/女");

: admutil.c:scan_register_form()

    prints("申請代號: %s (申請時間:%s)\n", userid, Btime(&rform.rtime));
+   prints("生日:%-2s/%-2s/%-2s  性別:%s\n",
+     rform.year, rform.month, rform.day, rform.sex);
    prints("服務單位: %s\n", rform.career);
    prints("目前住址: %s\n", rform.address);
    prints("連絡電話: %s\n%s\n", rform.phone, msg_seperator);

  ...
  ...

    case 'y':

      /* 提升權限 */
      sprintf(msg, "REG: %s:%s:%s:by %s",
        rform.phone, rform.career, rform.address, agent);
      justify_log(acct.userid, msg);
+     acct.year = atoi(rform.year);
+     acct.month = atoi(rform.month);
+     acct.day = atoi(rform.day);
+     acct.sex = strcmp(rform.sex, "男") ?
+       (strcmp(rform.sex, "女") ? 0 : 2) : 1;
      time(&(acct.tvalid));
      acct_setperm(&acct, PERM_VALID, 0);
+     utmp_admset(acct.userno, STATUS_DATALOCK);    /* 站長蓋資料 */

: run/rform 及 run/rform.log

  改了 struct RFORM 以後
  舊的 run/rform 及 run/rform.log 就不能用了,要刪除

--
  Origin:  Maple-itoc˙動力核心  processor.tfcis.org 
  Author: itoc itoc.dorm11.nctu.edu.tw 發表
精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻