印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
DownloadLinux Very Simple Shoutbox 1.1

Web サイトにコメント欄をつける PHP スクリプトのバージョンアップを行った。

■ ■ ■

はじめに

Web ページに貼り付けるだけでコメント欄が作れる PHP スクリプト「Very Simple Shoutbox」をバージョンアップした。バージョンアップのポイントは「サニタイズをやめた」ことである(nlog(n): サニタイズ言うな地獄)。その代わり,出力時に HTML の特殊文字を実体参照に変換することにした。

もともと,このスクリプトは Picasa で作成した画像表示用の HTML ページにコメント欄をつけることを目的として書かれたものである(nlog(n): Picasa の Web エクスポートに PukiWiki 風のコメント欄をつける)。これはこれでとても便利なのだが,Picasa 2.5 になって「Picasa ウェブアルバム」に写真がアップロードできるようになり,さらにコメントもつけられるようになったので,このスクリプトの存在意義はあまりなくなってしまった(自宅サーバにアップロードする場合は,今もなお有用ではある)。そこで,デフォルトの設定を,一般の簡易 BBS として使いやすいように変更することにした。変更の要点は次の通り。

  • サニタイズをやめた
  • デフォルトのデータファイル名の設定を一般的なものにした

今回のバージョンアップについては,前のバージョンにバグフィックスではなく,考え方を変えたことによる更新ということになる。

動作環境

PHP が動作することが必要(PHP 4, PHP 5)。PHP が動作するのであれば,ファイルの拡張子は .php でも .html でもよい。

ダウンロードと設置

Very Simple Shoutbox in PHP v1.1 をダウンロードする。コメント欄を設置したいページにこのコードを貼る。

設定

設置したページのディレクトリのパーミッションは,777 とする。ディレクトリに 777 を与えてたくない場合は,データファイルに書き込み許可を与えてもよい。このスクリプトは,動作させると「ページ名.txt」のデータファイルを作るので,あらかじめこの名前のファイルを長さ 0 で作っておき,パーミッションを 666 にしてもよい。例えば,設置した Web ページのファイル名が index.html であれば,データファイルは index.html.txt となる。データファイルにはコメントと日付が書かれることになる。

そのディレクトリには .htaccess ファイルを設置し,内容を次のように書く(nlog(n): 拡張子 html で PHP を動作させているときの文字化け問題が解決)。これは PHP5 の場合である。PHP4 の場合は mod_php4.c にするだけである。

<IfModule mod_php5.c>
  AddType "application/x-httpd-php" .html
  php_value default_charset utf-8
  php_value mbstring.internal_encoding UTF-8
</IfModule>

設置するページの拡張子が PHP である場合,最初の AddType ディレクティブの行は不要である。

デモ

スクリプトを埋め込むと次のような表示になる。

  • n -- こんな感じに。 2007-04-14 (土) 00:22:18
  • ↑ -- (;・∀・) 2007-05-11 (金) 00:07:01
  • テスターtester -- テストtest 2007-06-14 (木) 20:03:22
  • あいうえお -- かきくけこ 2007-07-15 (日) 00:28:17
  • てすと -- やまだ 2007-09-11 (火) 17:42:29
  • あ -- あ 2009-12-03 (木) 00:11:23
  • d -- ddd 2010-01-11 (月) 13:25:42
  • おお -- すごい、簡単にできるんですね 2010-01-11 (月) 14:07:49
  • かたおか -- すごいですねー 2010-01-27 (水) 20:28:16
  • あさ -- さささああ 2010-03-03 (水) 16:01:55
  • あ -- 簡単? 2011-06-10 (金) 19:29:27
  • ああ -- ですね 2015-02-18 (水) 13:34:39
お名前:

このページのファイル名は 000860.html なので,データファイルは 000860.html.txt になる。データファイルの文字コードは UTF-8 である。

Posted by n at 2007-04-13 22:52 | Edit | Comments (0) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?