2004年06月08日

p++BBSでクッキーが利かない?

昨日PHP設置の顛末は一通り書いたが、その続きである。

この内容は自分のスキルの無さをさらけ出しているだけだが、今後の参考になることもあるかもしれないと思って記しておく。

繰り返すようだがレッツPHPさんのp++BBSのプチ☆モードタイプを設置した。

で、四苦八苦しながらもなんとか一昨日設置は完了したのだが、使い初めてみて新たな問題点が浮上した。

■クッキーが利かない
クッキーが利いている場合、一度投稿したら二度目からは「名前」「URL」「Eメール」「削除キー」などは改めて入力しなくても最初から表示されているはずだ。

しかし、何回投稿しても白紙に戻ってしまう。

phpの記述を見ると、クッキーをちゃんと保存しているようなのだが、そこから先が判らない。
・・・保存したクッキー、どこで使ってるの?
???

■どうしたらいいのか探してみた
レッツPHP!さんの掲示板に何かヒントがあるかもしれないと、「クッキーが利かない」で検索してみた。
結果は不発。
今度は「クッキー」で検索。
おお、何か役に立ちそうなログが。

なになに。
skinをいじるのか。
skinで出力しているのだから、そこに空欄じゃなくてクッキーで保存したデータを入れよと命令すれば良いのだな。

■クッキーが利くように書き換えよう
具体的には・・・
たとえば

最初の投稿用のフォームを形成するhead.txtを開けて

<tr>
<td nowrap><b>おなまえ</b></td>
<td>
<input type=text name=name size="20" value=" ">
</td>
</tr>

こうあったら、「value=" "」 のところに空白じゃなくて、名前のクッキーを保存してある「$c_name」を入れる。

つまり、
<tr>
<td nowrap><b>おなまえ</b></td>
<td>
<input type=text name=name size="20" value="'.$c_name.'">
</td>
</tr>

こんな風に書き換える。

同様に名前欄だけでなく、URL欄や削除キー欄も。
また同様にresform.txtもいじりましょう。

これでOK。

それはいいんだけど、どうしてデフォルトでそういう設定になっていないのだろう。
それが不思議。
みんなクッキー使うでしょ?
せっかくphpの方でクッキーを保存してあるのにいちいちskinを書き換えないと実際にクッキーが表示されないなんてムズカシイ。
絶対途中で投げ出してしまう人がいると見た。

次回はresallのリンクについて(予告までうつとは・・・)

Posted by yoshika at 2004年06月08日 18:34
Comments