CGIのダウンロード

cgiスクリプトQuick Talk

スタイリッシュ・シンプルな一行掲示板(ゲストブック)

Index

この掲示板の特徴とサンプル

この掲示板は非常にクールでシンプルな1行掲示板です。 投稿欄も名前(ハンドルネーム)とメッセージしかありません。 あまりレスが多いようなシチュエーションでは使えませんが、 軽くお話したり、ゲストブックとして利用する時に便利だと思います。

管理人用モードを利用すると記事を削除したりする事ができます。 また、誤送信した時のための防止策も搭載しており、 例えば掲示板に記事を投稿した後にリロード(再読み込み)を行ってしまうと、 二重投稿されてしまう可能性が考えられますが、 この掲示板はひとつ手前の記事と同じ記事であった場合には送信しないようにしてあります。

悪戯対策の一環として投稿したIPを記録します。 管理者モードでIPとホスト名を見る事ができます。IPと時間が分かればサーバへ報告すれば対策になります。

  • 気軽に分かりやすく。をモットーに制作
  • HTMLタグは使えませんが、URLやメールアドレスはリンク化させる事が可能です。
  • アクセスカウンタ機能搭載
  • 二重投稿防止機能
  • 記事の削除(管理者モード)
  • 悪戯防止のためのIP検証(管理者モード)
  • SPAM投稿防止機能 (ver1.20〜)
  • クッキーの機能はありません。
  • 掃き出すソースにも重視し、アクセシビリティを考慮した設計

サンプル掲示板を御覧になりたい方はこちら(別ウィンドウが開きます)。書き込みも自由です。 尚、管理用モードは「1234」になっています。

top
ダウンロード

このCGIはWindows用/Macintosh用のエディタで編集している方用にShift-JISで表示するように記述されています。 UnixやLinux用ではEUCで表示するように制作されています。 最近では自動的に文字コード変換してくれると思いますが、一応対策です。

Windows Macintosh Unix/Linux

各種OS、お使いの環境によってダウンロードして下さい。 WindowsでもEUC/LFが良い場合にはUnix/Linux版をダウンロードしてください。

top
ダウンロード後の設定方法

ダウンロードした後に「quicktalk.cgi」をテキストエディタなどで開いて次の項目を編集してください。

#! /usr/local/bin/perl

1行目です。プロバイダによっては「#! /usr/bin/perl」の場合もあり得ますので注意して下さい。 その場合にはきちんと変更しなければエラーになってしまいます。 同じプロバイダでウェブサイトを持っている人などに聞くか、プロバイダのサイトを見れば書いてある場合が多いですので参考にしてください。

#タイトル(タグ使用可能)
$title = '<span style="color:#ff3333;">Q</span>
               uick-<span style="color:#ff3333;">T</span>alk' ;

タイトルを記述して下さい。タグがあっても大丈夫です。title要素には自動的にタグが省かれたものが表示されます。

#トップページのURL(相対)
$toppage = '../index.html' ;

ファイル「quicktalk.cgi」から見たトップページへの相対パスを記述します。

#e-mailアドレス
$email = 'a@a.com' ;

メールアドレスを記述して下さい。

#このファイルのファイル名
$thisfile = 'quicktalk.cgi' ;

このCGIのファイル名(初期値「quicktalk.cgi」)を記述して下さい。

#同時表示件数
$viewlimit = 10 ;

一度に表示させる最大記事数を設定して下さい。

#同時表示件数(管理モードの時)
$viewlimit_admin = 10 ;

管理モードの時に一度に表示させる最大記事数を設定して下さい。

#保存最大書き込み数
$maxlogs = 100 ;

投稿文字数に制限を付けます。0にすると無制限になります。

#最大投稿文字数
$maxcharacter = 255 ;

ログに保存する最大書き込み数を設定します。「同時表示件数」が10で「保存最大書き込み数」が100の場合には、10ページできます。

#リンク中にURLがあればリンクにするかどうか(0:しない、1:する)
$urlize = 1 ;

#リンク中にメールアドレスがあればリンクにするかどうか(0:しない、1:する)
$emailize = 1 ;

文書中にメールアドレスやURLがあった時にリンク化します。

#アクセスカウンタの利用?(0:しない、1:する)
$usecounter = 1 ;

アクセスカウンタを掲示板で利用する場合にはここを「1」にして下さい。

#アクセスカウンタのカウントが格納されているファイル
$countfile = 'count.dat' ;

アクセスカウンタのアクセス数を一時的に保存しておくためのファイル名を設定して下さい。

#管理用のパスワード
$passkey = '1234' ;

管理用モードを利用する際にログインするパスワードを設定して下さい。

#スパム対策用パスワード
$passkey = '' ;

もし掲示板がスパムで埋もれるようならば適当な文字列を記入します。ここに記入した文字列を投稿者にも促します。サンプル掲示板でもついてますので見てください。

top
パーミッションの設定方法

パーミッションの設定はサーバにアップロード後、以下のようにしてください。 また、サーバによっては「cgi-bin」フォルダからしか実行できない場合があるのでご注意下さい。

このように設定が完了したら取りあえず「quicktalk.cgi」をURL欄に打ち込んでみて下さい。 エラーが出るようでしたら、先程の『ダウンロード後の設定方法』にて第1行目が「#! /usr/bin/perl」の可能性が考えられます。

  • quicktalk(755)
    • quicktalk.cgi(755) - メインプログラム
    • jcode.pl(644) - 日本語データ解析用スクリプト
    • quicktalk.log(666) - 記事保管用ファイル
    • quicktalk.css(644) - 掲示板のデザイン(スタイルシート)
    • count.dat(666) - アクセスカウンタ利用時のアクセス数保存ファイル
    • img(755)
      • bg.gif(644)
      • mtwarning.gif(644)
      • mark.gif(644)

フォルダとGIF画像とCSSファイルと「jcode.pl」はアップロードした後はパーミッションは変更する必要はありません。

top
ブラウザでの動作確認

ブラウザでの動作確認なのですが、最適な環境は「Internet Explorer 4.0」以上、ハイカラー、XGAの解像度で最適化されます。 また、「Opera6.0」や「Netscaper7.0」でも動作確認済みです。レイアウトなどが多少崩れます。

top
改変・利用に関する諸事項
デザインなどの改変に関しまして

デザインの改造などを行う時には、付属の「quicktalk.css」を御覧になって下さい。 どこの部分のスタイルかは記述してありますので参考にして見て下さい。 基本的にはデザインはほとんどスタイルシートで記述されています。 スタイルシートに関する知識がある方は改変してみて下さい。

再配布をされる方への注意点

CGIスクリプトの表示部分から「http://www.w-frontier.com/」のリンクは必ず残してください。 また原則としてフリーウェアとしての再配布のみ認めます。

改変・改造したCGIを自分のウェブサイト上で再配布する際にはメールにてご一報よろしくお願いします。

top
プロバイダによる注意点

このCGIはサーバへの高速化と低負担化のためにファイルの排他制御にflock関数を使用しています。 大手プロバイダではflock関数が使えない所もありますので、事前に調べておくと良いでしょう。 また、flock関数が使えない場合でもCGIは動きますが排他制御が行われなくなるので、 ファイルの書き込み中に万が一エラーが起きた場合にはデータが消えてしまう場合がありますのでご注意下さい。 現段階で私が知る限りでのflock関数の使用が制限されているプロバイダは以下です。

他のプロバイダでも「flock」が使えない所を御存知でしたら教えて頂けると助かります。

top
バージョンアップ履歴
2008.02.01 (Saturday)
Ver. 1.20 - スパム防止キーによる英語スパム投稿の回避ができるようになりました。
2006.12.07 (Thusday)
Ver. 1.10 - 連続英字による禁則処理回避に対応。 headタグがきちんと閉じられていない致命的な構文ミスを修正。Opera/FireFoxによるコンテンツ中央寄せ、最大投稿文字数の設定が可能になりました。
top