|
ステップ1
現在のソース
<body>〜</body>:A1
resのソース:B1
tree:C1
tread:D1
として、次のものを用意します。
A1を「書き込み用フォーム」と「$board」、「記事より下の部分」に分離し、それぞれA11、A12、A13
と呼ぶことにします。
A11は変更不要。
A12は「$board」→「<!-- $board -->」としてください。
A13もとりあえずは変更不要です。
便宜上、それぞれをA21、A22、A23と呼ぶことにします。
B1には普通、「$hidden」という変数が含まれているはずです。
「$hidden」→「<input type="hidden" name="reply"
value="$seq">」として下さい。
また、form内の適当な部分に(分からなければ、<form>の直後に)「<input type="hidden"
name="referer" value="bbs_tree">」を追加して下さい。
変更後のものをB2とします
C1については、とりあえずこのままです。(C2と呼びます)
D1は、カスタマイズ済みの方、ごめんなさい。破棄して下さい。
代わりに、treeのソース(C1)をそのままコピーして、それをD2として下さい。
ステップ2
treeとthreadの工事です。今までの表示ソースに書き込みフォームを追加することになります。
まずC2に関して
次のようなソースを組みます。
「 --> begin{A21} C2 <!-- 」
さらに、返信のリンクの部分を次のように変更して下さい
変更前:<a href="bbs_reply?reply=$seq">
↓
変更後:<a href="bbs_thread?base=$seq&range=1">
以上で出来上がったものをC3と呼びます。
次にD2に関して
「 --> begin{B2} D2 <!-- 」
さらに、返信のリンクの部分を次のように変更して下さい
変更前:<a href="bbs_reply?reply=$seq">
↓
変更後:(なし。<a>〜</a>は削除して下さい。)
以上で出来上がったものをD3と呼びます。
で、これに伴い、<body>〜</body>のソースにも手を加えます。
「A22 A23」とし、これをA3と呼びます。
すなわち、A3は「A1からA11を取り払い、$board の前に「<!--」、後ろに「-->」をつけたものです。
ステップ3
各ソースを次のようにして下さい。
<body>〜</body>:A3
resのソース:なし
tree:C3
thread:D3
これで新しいレスフォームが完成です!
tread表示でレスを入れることになります。
ですが、一つ問題点があります。
threadにも$logが反映されてしまう点です。
これがあると、レス画面なのだかなんだか わけが分からなくなります。
この対策が次のステップ4です
ステップ4
treeでは$logなどを表示させ、threadでは$logなどを表示させないようにします。
これにはスタイルシートが有効です。といっても、次のようにするだけです。
A4:「 A3 </div> 」として下さい。
C4:「 C3 $end{<div>} 」として下さい。
D4:「 D3 $end{<div style="display:none;">} 」として下さい。
ステップ3同様、これらのソースを当てはめれば完了です。
|