■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50

read.cgi改良スレッド 2

464 :デフォルトの名無しさん :01/09/19 04:57
う、imode時のPATH仕様対応をやってたんだが一足遅かったか。
[r2chhtml.h]
/* tail: npath=生成するURLその1 nst=次のxxxレス
lpath=生成するURLその2 ls=最新レスxxx */
#define R2CH_HTML_T_IMODE_TAIL(npath, nst, lpath, ls) \
" <a href=\"" npath "\">次の" nst "レス</a>" \
" <a href=\"" lpath "\">最新レス" ls "</a><br>\n"

/* tail: PATHナシ
%s=cgi %s=board %s=key %d=開始 %d=終了 %d=レス数
%s=cgi %s=board %s=key %d=レス数 %d=レス数 */
#define R2CH_HTML_IMODE_TAIL \
R2CH_HTML_T_IMODE_TAIL("%s?bbs=%s&key=%s&st=%d&to=%d&imode=true", "%d", \
"%s?bbs=%s&key=%s&ls=%d&imode=true" NO_FIRST, "%d")

/* tail: PATH仕様
%d=開始 %d=終了 %d=レス数
%d=レス数 %d=レス数 */
#define R2CH_HTML_PATH_IMODE_TAIL \
R2CH_HTML_T_IMODE_TAIL("%d-%di", "%d", \
"l%di", "%d")

/* i-Modeで見たとき: PATH仕様
%s=スレ名 %s=板 %d=一度に表示するレス数
%d=一度に表示するレス数 %d=一度に表示するレス数 */
/* </title>の前の空白は削除しないこと */
#define R2CH_HTML_PATH_IMODE_HEADER_1 \
"<html>" \
"<head>" \
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">" \
"<title>%s </title>" \
"</head>" \
"<body bgcolor=#efefef text=black link=blue alink=red vlink=#660099>" \
"<a href=\"../../../../%s/i/\">■掲示板に戻る■</a>" \
" <a href=\"1-%di\">レスを最初から読む</a>" \
" <a href=\"l%di\">最新レス%d</a>"

#define R2CH_HTML_PATH_RELOAD_I \
"<center><a href=\"%d-i\">新着レスの表\示</a></center><hr>"

#define R2CH_HTML_FORM_IMODE(depth) \
"<form method=POST action=\"" depth "bbs.cgi\">\n" \
"<input type=submit value=\"かきこむ\" name=submit> " \
"NAME:<input name=FROM size=20 value=\"\">" \
"MAIL:<input name=mail size=20 value=\"\">" \
"<br>" \
"<input type=hidden name=bbs value=%s>" \
"<input type=hidden name=key value=%s>" \
"<input type=hidden name=time value=%ld>" \
"<textarea rows=5 cols=60 wrap=off name=MESSAGE></textarea>" \
"</form><br>"

465 :デフォルトの名無しさん :01/09/19 04:59
机上デバッグしかやってないのでうまく通らないかも。
[read.c]
out_html()に追加:
#ifdef USE_PATH
if (path_depth)
pPrintf(pStdout, R2CH_HTML_PATH_IMODE_TAIL,
lineNo, lineNo + RES_IMODE, RES_IMODE,
RES_IMODE, RES_IMODE);
else
#endif

html_head()に追加:
#ifdef USE_PATH
if (path_depth)
pPrintf(pStdout, R2CH_HTML_PATH_IMODE_HEADER_1,
title, zz_bs, RES_IMODE,
RES_IMODE, RES_IMODE);
else
#endif

html_reload()に追加:
#ifdef USE_PATH
if (path_depth)
pPrintf(pStdout, R2CH_HTML_PATH_RELOAD_I, startline);
else
#endif

html_foot_im()に追加・変更:
#ifdef USE_PATH
if (path_depth)
pPrintf(pStdout, R2CH_HTML_FORM_IMODE("../../../"), zz_bs, zz_ky, currentTime);
else
#endif
pPrintf(pStdout, R2CH_HTML_FORM_IMODE(""), zz_bs, zz_ky, currentTime);

325KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30