アンチェキ

この記事は約17分で読めます。

◆動作サンプル ※書き込みはできません。

ダウンロード ※ダウンロード後、解凍ツールで解凍して下さい。
特徴&機能説明

当サイトで配布している出席簿CGI《Annevote》の発展系CGIです。

『携帯対応』&『複数イベント対応』が大きな違いです。

↓どんな機能があるか簡単な説明を。

■携帯対応!

■入力フォーム系画面

・ほとんどの項目名についてCGI側で設定可能
・各項目について必須入力にするかどうかの設定も可能

■申込フォーム
「性別」「年齢」「居住地」等は、無くす事も可能ですし、
違う選択項目(好きなサッカーチームは?とか)にも変更可能。

■イベントの作成は「管理人のみ」でも「誰でも」でも設定可能。
※「誰でも」の場合は『管理人承認不要』と『管理人承認必要』が設定出来ます

■別途用意したHTMLファイルを「イベントの説明」として表示する事も可能。
※携帯アクセス時には表示されません

■メールアドレス非公開設定可能。
※フォームメール形式でメールを送れますので、
ブラウザ上にはメールアドレスは表示されません。

■「イベント一覧」を無くすことも可能。
※イベント毎に1つのCGIで使い回しが出来るよ

■「申込フォーム(イベントに対してのユーザーからの投稿)」を
外すことも出来ます。

※管理人からの一方的な「お知らせ」に使えるかな?

■「イベント一覧」に期日が過ぎたイベントは表示しない事も出来ます
※開催日時が設定されていなければ機能しません。

■「イベント一覧」表示を《年月毎》に表示する事も出来ます

■イベントは「投稿終了・開始・削除」が出来ます。
※一時中断(投稿終了)や、再開(開始)といった使い方も出来ますね。

■「メール送信機能」があるのでメール一斉配信も可能です。
※但しメールアドレスが入力されている人だけね

■イベント一覧情報は、別途JSファイルへの書き出しを行いますので、
HTMLページの中にイベント情報を埋め込む事が可能です


■RSS対応

設置方法 ※重要な部分のみ説明します

■主な設定項目

  • $kanrisw = 0; #管理人以外に「新規イベント作成」を許可させる?(0:いいえ 1:はい(管理人承認不要) 2:はい(管理人承認必要))
  • 「イベント一覧」へのリンクを付ける?
    イベント一覧を表示したくないが、1つのCGIで複数設置したい場合は、
    $eventlist=0として、「https://tackysroom.com/~/annecheki.cgi?no=イベントNo」で
    使う事も出来ます。※イベントのフォーム項目が全て同じであれば
    0:付けない 1:付ける
    ※管理人以外も登録可($kanrisw≠0)でイベント一覧を表示しない($eventlist=0)はおかしいのでやめましょう。
    $eventlist = 1;
  • 「イベント」に対して、申込(投稿)フォームを付ける?(0:no 1:yes)
    申込フォームを付けないと、「イベントスケジュールのお知らせ」のように使うことが出来ます
    $eventsw = 1;
  • 「イベント一覧」に期日が過ぎたイベントは表示しない?(0:no 1:yes)
    #※開催日時が設定されていなければ機能しません。
    $eventdisp = 1;
  • 「イベント一覧」の表示を《年月毎》にする?(0:no 1:yes)
    $eventdisp2 = 1;
  • イベント作成時のフォーム項目の設定。※設定値がそのままフォームの項目名となります
    【設定値の最後に”*”を付けると、その項目は”必須入力”となります】
    予備は追加する事も可能です。$eveFld[15],$eveFld[16]…$eveFld[20]のように
    予備については全て「テキストボックス」となります。
    $eveFld[0] = ‘開催日時’; #「開催日時」必要?(指定無(”)は不要の扱い)
    $eveFld[1] = ‘イベント名*’; #「イベント名」 ※イベント名は必ず”必須”として下さい
    $eveFld[2] = ‘幹事*’; #「幹事」必要?(指定無(”)は不要の扱い)
    $eveFld[3] = ‘連絡先’; #「幹事のメールアドレス」必要?(指定無(”)は不要の扱い)
    $eveFld[4] = ‘開催場所’; #「開催場所」必要?(指定無(”)は不要の扱い)
    $eveFld[5] = ‘イベントの内容*’; #「イベント内容」必要?(指定無(”)は不要の扱い)
    $eveFld[6] = ‘申\込フォームに表示させるメッセージ’; #「申込フォームに表示させるメッセージ」必要?(指定無(”)は不要の扱い)
    $eveFld[7] = ‘投稿可能期間’; #「投稿可能期間」必要?(指定無(”)は不要の扱い)
    $eveFld[8] = ‘参加最大人数’; #「参加人数の制限」必要?(指定無(”)は不要の扱い) ※実際の入力は数値
    $eveFld[9] = ‘お知らせ用HTML’; #「お知らせ用HTML」必要?(別途作成したHTMLファイルを表示する場合)
    $eveFld[10] = ‘会費’; #「会費」必要?(指定無(”)は不要の扱い)※実際の入力は数値
    $eveFld[11] = ”; #「予備1」必要?(指定無(”)は不要の扱い)
    $eveFld[12] = ”; #「予備2」必要?(指定無(”)は不要の扱い)
    $eveFld[13] = ”; #「予備3」必要?(指定無(”)は不要の扱い)
    $eveFld[14] = ”; #「予備4」必要?(指定無(”)は不要の扱い)

    ※当スクリプトは基本は「イベント管理」としてご利用して頂く事を想定していますが、
    『開催日時を使わない($eveFld[0] = ”)』の設定にすれば、「Q&A」とか「売ります・買います」みたいな
    利用方法も出来るかなとも思います。
  • #上記のフォーム項目のうち、イベント一覧に表示させるのは?
    #※[xx]の数字を入れて下さい。
    #指定した並び順で表示されます
    @eveDisp = (1,0,4,8,10); ←「開催日時($eveFld[0]番目)」を表示しないなら『@eveDisp = (1,4,8,10);』のようにします。

    #上記@eveDispで指定した項目について、各セル幅を指定出来ます
    @eveDispWidth = (‘40%’,’20%’,’20%’,’10%’,’10%’);

    #上記@eveDispで指定した項目について、各セルについてnowrap(文字を折り返ししない)を指定出来ます(1:折り返ししない)
    @eveDispnowrap = (0,1,0,1,1);
  • アップロードディレクトリのパス → パスの最後は / を付けてください。
    #※hi-hoの方は、$UpFolder = “$ENV{‘HOME’}/html/画像フォルダ名/”;として下さいね。
    #※Niftyの方は、$UpFoler = “/homepage/画像フォルダ名/”;でたぶん良いかと・・・(^^;;;
    $UpFolder = “./img/”
  • $lbl_tani1 = “出席人数”; #「申込フォーム」で申込(参加)人数を指定したい場合の項目見出しを指定。
    #指定しない場合($lbl_tani1=””)は、【1人】としてカウントします。

    $lbl_tani2 = “人”; #$lbl_tani1を指定した場合の、単位を指定。#申込フォームで指定する「申込人数」。
    #特に必要が無ければ、$TBL_SEX[0] = “”;として下さい。その場合申込フォームには「出席人数 [選択]人」のように表示されます。
    #1回の申込で「大人3名、子供2名」のように入力させたい場合は、
    #$TBL_SEX[0],$TBL_SEX[1]…$TBL_SEX[5]のように選択させたい分だけ追加して下さい。
    #この場合申込フォームは、
    # 出席人数 大人[選択]人
    # 子供[選択]人
    #のように表示されます。
    $TBL_SEX[0] = “大人”;
    $TBL_SEX[1] = “子供”;
    $TBL_SEX[2] = “ペット”;#「参加人数の制限」(上記$eveFld[8])を行う場合、
    #上記$TBL_SEX[0]が”参加”となっている人数でチェックをする場合は、1。
    #上記$TBL_SEX[0]~[n]の全て”参加”となっている人数でチェックをする場合は、2。
    $check_sum = 1;$tani_max = 10; #$lbl_tani1を指定した場合、プルダウンに表示させる最大数を指定して下さい。(最大100名なら100)

■RSSファイル出力についての設定項目

  • $rssfile = ‘annecheki.rdf’ ; #RSS出力用ファイル名
  • $rssfilefull = ‘https://tackysroom.com/sample2015/annecheki/sample1/annecheki.rdf’ ; #RSS出力用ファイル名(httpからのフルパス)
  • $rsscnt = 10; #$rss=1の場合、最新のイベントn件をRDFファイルに出力します
  • $rss_title = ‘[Tackyイベント情報]’; #RSSのタイトルを指定
  • $rss_home = ‘https://tackysroom.com’; #サイトのURLを指定
  • $rss_name = ‘タッキーズルーム’; #サイトの要約を記述
  • $rss_time = ‘+9:00’; #世界標準時からみた時間差異(日本なら+9:00)
  • $rss_icon = ‘<img src=”./rss.gif” width=”36″ height=”14″ border=”0″>’; #RSSアイコン
  • $rss_bassari_t = 50; #RSSファイルを出力する場合、『イベントタイトル』を何文字分吐き出します? ※全ての場合は0。
  • $rss_bassari_c = 100; #RSSファイルを出力する場合、『イベント内容』を何文字分吐き出します? ※全ての場合は0。

■JSファイル出力についての設定項目

  • $jsfile = ‘./annecheki.js’; #JSファイルを出力する場合のファイル名 ※不要な場合は”
  • $jscnt = 5; #JSファイルを出力する場合、最新のイベントn件をJSファイルに出力します
  • $js_bassari_t = 20; #JSファイルを出力する場合、『イベントタイトル』を何文字分吐き出します? ※全ての場合は0。
  • $js_bassari_c = 50; #JSファイルを出力する場合、『イベント内容』を何文字分吐き出します? ※全ての場合は0。

  ▼JSファイルには以下の4項目が出力されます。
  ・$eveFld[0] = ‘開催日時’
  ・$eveFld[1] = ‘イベント名*’
  ・$eveFld[5] = ‘イベントの内容*’
  ・投稿日時

  ▼JSファイル表示の際の文字色等の変更はCSSを変更する事によって可能です
  ・「データ」が表示される部分を変更したい場合→class「js_detail」
  ・「▼イベント名」、「▼開催日時」等 を変更したい場合→class「js_head」
  ・「イベント名」 の行に対して変更したい場合→id「js_ttl」
  ・「開催日時」 の行に対して変更したい場合→id「js_evdate」
  ・「イベントの内容」 の行に対して変更したい場合→id「js_comm」
  ・「投稿日時」 の行に対して変更したい場合→id「js_date」

  例: JSファイルを表示させる


   

<TITLE>イベント更新情報</TITLE>
<style type="text/css">
<!--
/* #js_hr     { display:none; } */
.js_head   { color:#900; }
/* #js_ttl    { color:#900; } */
/* #js_evdate { display:none; } */
/* #js_comm   { display:none; } */
/* #js_date   { display:none; } */
#js_head   { font-weight: bold; color:#000; }
#js_detail { color:#000; }
-->
</style>
</HEAD>
<body>
<p><b><font size="6">イベント更新情報</font></b></p>
<noscript><p>JavaScriptを有効にしてください</p></noscript>
<script language="JavaScript" src="annecheki.js"></script>
</body></html>
■設置サンプル
     ├ [annecheki] ┐[777]
     │        ├ annecheki.cgi [755](このファイルにリンクして下さい)
     │        ├ annecheki_pc.pl [755]
     │        ├ annecheki_ph.pl [755]
     │        ├ annecheki.dat [606](空のファイルをサーバーに作成して下さい)
     │        ├ annecheki.js   [606](空のファイルをサーバーに作成して下さい)
     │        ├ annecheki.rdf [606](空のファイルをサーバーに作成して下さい)
     │        ├ jcode.pl    [755]
     │        ├ [log] (パーミッション[777]/過去ログを作成する場合にフォルダを作成して下さい)
     │        │  ├ annecheki+記事No.cgi... (作成された過去ログファイル)(606)
     │        ├ [img] (パーミッション[777]/ファイルアップロードを使用する場合にフォルダを作成して下さい)
     │        │  ├ 記事No.拡張子

     [ ]内の数字はパーミッション


■各ファイルをサーバーへアップロードします。
ファイル名説明パーミッション転送モード
annecheki.cgi本体755アスキーモード
annecheki_pc.plPC閲覧用ライブラリ755アスキーモード
annecheki_ph.pl携帯閲覧用ライブラリ755アスキーモード
annecheki.datイベント情報を保存するファイル606アスキーモード
annecheki.jsJSファイル606アスキーモード
annecheki.rdfRSSファイル606アスキーモード
jcode.pl日本語コード変換ライブラリ755アスキーモード
img
(サーバーにフォルダを作成してね)
ファイルアップロードされたファイルを保存するフォルダ777 
log
(サーバーにフォルダを作成してね)
イベント毎のログファイルを作成するフォルダ777 

※パーミッションはプロバイダーによって上記以外の設定となる事がありますので、
設置出来ない場合は、一度プロバイダーのサイトなりで調査してみて下さい。

更新履歴

◆Ver0.69 (2009.02.18)

・投稿禁止ワードの比較ロジックを修正

◆Ver0.68 (2009.01.14)

・ファイルアップロードの際の拡張子の正当性チェックを追加

◆Ver0.66 (2008.11.12)

・参加人数の計算ロジック不具合対応

◆Ver0.65 (2008.11.04)

・申込投稿時のパスワードが4文字未満でも投稿可能になっていたので、
4~8桁のみ投稿可能に修正致しました

◆Ver0.64 (2008.10.23)

・投稿期間が過ぎた場合、一覧画面に「イベント終了」の画像が表示されないバグ対応。
(前回修正したつもりが修正されていませんでした・・・m(_ _)m)

◆Ver0.63 (2008.09.24)

・「会費0円」を可能にしました
・記事を修正した場合、イベント一覧の参加人数がおかしくなるバグ修正

◆Ver0.62 (2008.06.29)

・投稿期間が過ぎた場合、一覧画面に「イベント終了」の画像が表示されないバグ対応。

・管理人が「イベント終了」をした記事を過去表示画面に表示するようにしました


◆Ver0.61 (2008.06.06)

■画面が携帯デザインで表示されていました・・・
Ver0.6をお使いの方は、521行目の「$env=1;」を消すか、こちらの最新版をお使い下さいませ。

◆Ver0.6 (2008.06.01)

■イベントを承認必要($kanrisw=2)の場合、イベント一覧画面に【未承認記事の表示】のリンクを付ける設定を追加
 →設定項目:$msyonin_disp (no:リンクしない yes:リンクする)

 注)未承認イベントは期間が対象内だとしても
 詳細画面の 申込フォームへのリンクボタンは表示されない仕様としています。

■上記の表示用ボタンの文字
 →設定項目:$event_msyonin = ‘未承認’

■イベント一覧画面に【終了した(又は期間が過ぎた)イベントを表示】のリンクを付ける設定を追加
 →設定項目:$end_disp (no:リンクしない yes:リンクする)

 注)期間が過ぎていて、イベント状況としては終了していないものについては、
 申込フォームへのリンクボタンは表示されない仕様としています。

■上記の表示用ボタンの文字
 →設定項目:$event_end = ‘過去表\示’


◆Ver0.59(2008.03.25)
  ・Ver0.589の修正に伴い、申込フォームのコメント欄で「改行を挿入」した場合ログが破損してしまう重大バグ修正

◆Ver0.589(2008.03.18)
  ・参加者へのメール送信時、「本文」の改行が無視されてしまう不具合修正
  ※556行目。
   【 } else { 】 を  【 } elsif ( $name ne ‘com’ ) { 】 に。

◆Ver0.588(2008.03.06)
  ・誰でもイベントを作成出来る設定($kanrisw≠0)の場合、イベント作成フォームに
  パスワードが2個表示されてしまうバグ修正

◆Ver0.587(2008.02.21)
  ・「イベント」又は「申込」の記事を修正した場合、記事の登録日を最新の日付に置換する設定を追加しました。
  ※$dataup1と$dataup2

◆Ver0.586(2008.01.28)
  ・「イベント」としてではなく「お知らせ」として使用する場合($eventsw=0)、
  イベント登録フォームにおいて「選択肢」及び「参加とする要素」を表示させないようにしました

◆Ver0.585(2008.01.26)
  ・「大人○名、子供○名」の指定ではない($lbl_tani1を指定しない)場合、申込フォームで投稿出来ない不具合修正

◆Ver0.584(2008.01.22)
  ・「大人○名、子供○名」の指定ではない($lbl_tani1を指定しない)場合、携帯アクセス時の表示等の不具合修正

◆Ver0.583(2008.01.17)
  ・選択肢必須設定($hissu_select=1)時で、出席人数(大人、子供等。$lbl_tani1の指定)の
  必須となる要素(参加、二次会から参加等)を省略した場合、エラーとするように修正
  ・「イベント管理」 のイベント情報の一括削除が機能していなかった不具合修正。

◆Ver0.582(2008.01.16)
  ・選択肢必須設定($hissu_select=1)時で、
  出席人数(大人、子供等。$lbl_tani1の指定)を省略した場合、エラーとするように修正

◆Ver0.581(2008.01.15)
  ・申込フォームに「申込(参加)人数」を設定した場合、
   イベント詳細画面の人数合計欄に「各選択肢の合計」を追加
  ・「参加」の判断を当初は選択肢1番目としていたが、
   イベント情報登録時にどの選択肢を「参加と見なすか」の設定を出来るようにしました。
  ・申込フォームに表示するメッセージをタグ付きで表示出来るようにしました。
   ※$eve6width

◆Ver0.58(2008.01.14)
  ・申込フォームに「申込(参加)人数」を追加しました。
   「大人○名、子供○名」の申込が可能になりました。
   ※449行目からの、$lbl_tani1,$lbl_tani2,$TBL_SEX[0],$check_sum,$tani_maxの設定項目追加。

  ・既にお使いの方はannecheki.cgi/annecheki_pc.pl/annecheki_ph.plを差し替えて下さい。
  ログファイルは旧Verと互換性がありますのでそのままお使い下さい。

◆Ver0.578(2007.10.30)
  ・投稿可能期間判断の不具合対応

◆Ver0.577(2007.10.12)
  ・イベント削除後、RSS/JSファイルに削除したイベント情報が残っている不具合対応

◆Ver0.576(2007.10.05)
  ・選択肢を必須としない($hissu_select=0)の場合、選択肢を省略した場合でも「参加」とカウントされてしまう不具合対応

◆Ver0.575(2007.10.03)
  ・日付、時刻の表示で「10」が「1 」のようにおかしく表示されてしまう不具合対応

◆Ver0.574(2007.09.27)
  ・画像形式”jpeg”に対応していませんでした

◆Ver0.573(2007.09.04)
  ・余計なタグを除去

◆Ver0.572(2007.08.21)
  ・記事修正時に、改行が除去されてしまう不具合対応
  ・記事削除時に、「選択肢は必ず選択して下さい」とエラーになる不具合対応

◆Ver0.571(2007.08.09)
  ・URL必須入力($urlflg)が機能していない不具合対応

◆Ver0.57(2007.08.06)
  ・メール送信時、全て「参加」となってしまう不具合対応
  ・申込フォームに「URL」の入力を可能にしました。

◆Ver0.56(2007.07.30)
  ・「イベント一覧」に表示される「開催日時」に《曜日》を表示出来るようにしました
  ・携帯アクセス時、イベント詳細画面でのスクロール表示が出来ない場合がある不具合対応

◆Ver0.55(2007.06.07)
  ・「イベント一覧」に表示される「投稿日」が間違って表示される場合がある不具合対応

◆Ver0.54(2007.06.06)
  ・「イベント一覧」に期日が過ぎたイベントは表示する($eventdisp=1)の設定時、
   イベントが終了していないイベントが一覧に表示されない不具合対応
  ・「イベントの内容」と「申込フォームに表示させるメッセージ」内の【改行】が反映されない不具合対応

◆Ver0.53(2007.05.24)
  ・管理人からのメール送信時、宛先を「To」→「Bcc」に変更

◆Ver0.52(2007.04.26)
  ・「$eventdisp(「イベント一覧」に期日が過ぎたイベントは表示しない?)」の設定が動作してませんでした

◆Ver0.51(2007.04.24)
  ・イベント一覧の「終了」処理不具合対応

◆Ver0.5(2007.04.15)
  ・正式版配布開始。

◆Ver0.5β(2007.03.20)
  ・ベータ版配布開始。

◆Ver0.5β(2007.03.06)
  ・ベータ版お披露目。

タイトルとURLをコピーしました