回文章列表
作者jai166.bbs@ptt.cc (榮耀 尊絕 不凡 台科) 看板: installbbs
標題Re: [問題] 編輯功能
時間批踢踢實業 (2008/09/24 Wed 03:27:34)
現在回這篇,似乎太慢了XD
想問大家幾個問題

1. 請問使用這一堆link 會不會產生很多的垃圾檔案呢?
   即使檔案占的空間還是那一塊 但檔案配置表會比較浪費一些吧!?
   若是這樣 浪費的空間會不會很可觀?

2. 還有為什麼 WDBBS 及 itoc 板的都是使用 hard link 達成連結的效果?
   為何不採用 symbolic link 來達成呢? 兩者的優缺點為何可以麻煩大大解釋嗎?

另一方面 本站目前想增加這兩個功能
 a. 匿名文章查使用者代碼的方法
 b. 類似PTT的 "~" "+" 推文標示功能
但是目前本站的 fileheader 長度不足(如下所示)
╭───────────────────────────────────╮
struct fileheader                                                    
{                                                                    
char filename[FNLEN - 1];     /* M.9876543210.A */                 
char recommend;               /* 推文紀錄 */                       
char savemode;                /* file save mode */                 
char owner[IDLEN + 2];        /* uid[.] */                         
char date[6];                 /* [02/02] or space(5) */            
char title[TTLEN + 1];                                             
uschar filemode;              /* must be last field @ boards.c */  
};                                                                   
╰───────────────────────────────────╯
還有目前本站在修改文章時不會更動檔名,檔名是固定的

關於 a. 目前想到的處理方式
  1) 取消掉匿名板自訂名稱的功能,用 owner 來放 uid
  2) 開一個新檔案,記錄各 M.9876543210.A 所對應到的 uid 及其他欲新增的功能
  3) 更動 fileheader 的結構(目前想到可能要更動的 .DIR 有看板 精華區 信箱)
關於 b. 目前想到的處理方式
  1) char date[] 拿來放:
     改成幾個 time_t 不過一般電腦 time_t 是 4 Byte,似乎只能放一個
     再者可能須修改相當多的函式(目前只想到文章列表呈現這部分而已)
     配合之前修掉stamp的bug,日後日期就用 filename 來產生*
     而推文標示函式就檢查這裡(同 PTT 的 modified )
     不過 *的部分 不知道會給效能帶來多大的影響
  2) 同 a. 2) 開一個新檔案,記錄
  3) 同 a. 3) 更動 fileheader 的結構

所以...

3. 想問大家對於這幾種方式的看法如何?或是有更好的方法?

※ 引述《hrs113355.bbs@XDBBS.twbbs.org (最愛笨小史的分子)》之銘言:
: ※ 引述《jai166.bbs@ptt.cc (榮耀 尊絕 不凡 台科)》之銘言:
: > 我是熱帶魚天堂(tropic.med.kmu.edu.tw)的站長群之一jai166
: > 敝站BBS是使用 WDBBS v1.34r
: > 之後程式碼已經由歷屆站長大幅更新過了
: > 有些功能和原始WDBBS有蠻大的差異
: > 我想問一下 在使用 edit_post() 後
: > 程式會用stampfile產生一個新檔案 之後再unlink掉原來的文章
: 有個方法
: 把舊檔作成新檔的link
: 可以順便解決石頭文的問題
: > 為什麼要這麼做呢?
: > 最近敝站參考了 hrs113355 前輩所分享的置底文程式碼
: > ( http://hrs.ckeisc.org/blog/post/121 ,謝謝hrs113355的分享)
: > 由於 link() 一直出問題,之後便直接把 mhdr 的 filename 指向原檔案
: 這樣會出問題
是的,到暑假才發現在修文後不會有標示...
: > 不使用 stampfile 和 link 了,但又產生新的問題(編輯文章後會變石頭)
: > 目前想到的解法是 stampfile 後,將新檔案更名舊檔案的名稱
: > 同時將 fhdr 的 filename 指向舊檔名
: > 所以想問問 edit_post() 的原理
: > 謝謝各位大大

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.252.41.23
※ 編輯: jai166          來自: 123.252.41.23        (09/24 03:27)
文章選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻