作者chwaian.bbs@cpu.tfcis.org (無言) 看板: plan
標題Re: 重整註冊單
時間動力核心 (2005/01/10 Mon 20:52:58) Updated: 2005/01/10
應該可以用了 不過很耗資源 久久執行一次即可
有做 [功能] 秀出使用者註冊單所填之電話/住址
且註冊單紀錄檔案大小 已經蠻大的時候 可使用
: src/util/Makefile 加入 fixrform
EXE = ... fixrform
: src/util/fixrform.c 新增程式如下
/*-------------------------------------------------------*/
/* util/fixrform.c ( NTHU CS MapleBBS Ver 3.00 ) */
/*-------------------------------------------------------*/
/* target : 重整註冊單 */
/* create : 05/01/10 */
/* update : / / */
/* author : chwaian.bbs@cpu.tfcis.org */
/*-------------------------------------------------------*/
#include "bbs.h"
static int
find_rform(rform2, fp)
RFORM *rform2;
FILE *fp;
{
RFORM rform;
int rc;
rc = 0;
fseek(fp, sizeof(RFORM), 0); /* reset fread */
while (fread(&rform, sizeof(RFORM), 1, fp) == 1)
{
if (rform2->userno == rform.userno)
{
rform2->rtime = rform.rtime;
strcpy(rform2->userid, rform.userid);
strcpy(rform2->agent, rform.agent);
strcpy(rform2->realname, rform.realname);
strcpy(rform2->career, rform.career);
strcpy(rform2->address, rform.address);
strcpy(rform2->phone, rform.phone);
strcpy(rform2->reply, rform.reply);
rc = 1;
}
}
return rc;
}
/*-------------------------------------------------------*/
/* 主程式 */
/*-------------------------------------------------------*/
int
main()
{
int numuser; /* 總共有幾個註冊帳號 */
int point;
RFORM rform2;
FILE *fp;
chdir(BBSHOME);
unlink("run/rform.log.bak");
numuser = rec_num(FN_SCHEMA, sizeof(SCHEMA));
if (!(fp = fopen(FN_RUN_RFORM_LOG, "r")))
return 0;
for (point = 1; point < numuser; point++)
{
rform2.userno = point;
if (find_rform(&rform2, fp))
rec_add("run/rform.log.bak", &rform2, sizeof(RFORM));
}
fclose(fp);
/* f_mv("run/rform.log.bak","run/rform.log"); */
/* test過,覺得都沒問題的話,才用這行 */
return 0;
}
--
◤◥ Origin: Maple-itoc˙動力核心 cpu.tfcis.org
◣◢ Author: chwaian 從 218-165-121-144.dynamic.hinet.net 發表