Make your own free website on Tripod.com
CGI-StaTionの... トップへ   /   ダウンロードページへ

新・JawaNote
      HTMLテンプレートリファレンス
テンプレート式掲示板(jnote.cgi)
■ HTMLテンプレートとは?

HTML言語にCGIにとって必要なタグ等を追加した拡張HTMLを使って,作成したテンプレートをHTMLテンプレートと呼んでいます.
ここでは,HTML言語でホームページを作成したことがある人を対象としているので,HTML言語については他で勉強してください.書店に行けば,たくさんのHTML言語の説明書がありますし,インターネット上にもたくさんあります.僕のお薦めは「とほほのWWW入門」ですが,自分にあった解説ページを探し出すのも良いでしょう.

とほほのWWW入門
■ 拡張タグ

新・JawaNote専用のタグの一覧です.
主にフォームに関するものと,動作に関するものに分けられています.


タグ <!registrationform!> 〜 <!/registrationform!>
説明 登録用の入力フォームを表示するために使います.
HTML言語の<form>と使い方は変わりません.
このタグで囲ったフォームの内の <input>タグ等のNAME属性には,
 title,name,mail,url,comment(左から,タイトル,名前,メール,URL,コメントを示す)
を利用することができます.
属性 このタグは属性を持っていません.
使用例
<!registrationform!>
タイトルは?:<input type='text' name='title' size=30><br>
名前は?:<input type='text' name='name' size=30><br>
メールアドレスは?:<input type='text' name='mail' size=50><br>
URLは?:<input type='text' name='url' size=50><br>
コメントを書いてください.
<textarea name='comment' cols=60 rows=8></textarea>
<br>
<br>
<input type='submit' value='書き込む' class='button'>
<!/registrationform!>

タグ <!passwordform!> 〜 <!/passwordform!>
説明 パスワードの入力フォームを表示するために使います.
HTML言語の<form>と使い方は変わりません.
このタグで囲ったフォームの内の <input>タグ等のNAME属性には,
 master(パスワードを示す)
を利用することができます.
属性 このタグは属性を持っていません.
使用例
<!passwordform!>
パスワードを入力:<input type='password' name='master' size=16><br>
<input type='submit' value='これで良い' class='button'>
<!/passwordform!>

タグ <!adminform!> 〜 <!/adminform!>
説明 管理用エディタでの入力フォームを表示するために使います.
HTML言語の<form>と使い方は変わりません.
このタグで囲ったフォームの内の <input>タグ等のNAME属性には,
 del(削除する記事を示す)
を利用することができます.
属性 このタグは属性を持っていません.
使用例
<!adminform!>
削除したいログの識別番号は? <input type='text' name='del' size=15>
<input type='submit' value='削除する' class='button'>
<!/adminform!>


タグ <!logloop!> 〜 <!/logloop!>
説明 ログの繰り返し表示の動作を行います.
このタグで囲った内部では,適切なログ置換変数がセットされます.
繰り返し回数は,CGI本体のセットアップで変更することができます.
属性 このタグは属性を持っていません.
使用例
<!logloop!>




<!/logloop!>


タグ <!exist!> 〜 <!/exist!>
<!notexist!> 〜 <!/notexist!>
説明 置換変数の値が存在する(exist)か存在しない(notexist)かで表示を決めるタグです.
existタグなら指定した置換変数の値が存在する場合にのみ,タグで囲った内部が表示されます.
notexistタグはその逆です.
属性 調査したい置換変数をセット.
置換変数が存在しない場合は無視される.
使用例
<!exist=${log_mail}!>
    メールアドレス:${log_mail}
<!/exist!>
<!notexist=${log_mail}!>
    メールは登録されてません.
<!/notexist!>

■ 置換変数

HTML言語とは異なり,CGIでは変数を扱っています.
新・JawaNoteでは難しいことはできるだけ避けたいため,変数は置換でのみ処理し,これを置換変数と呼ぶことにしています.
置換変数は例えば,${name} のように記述しますが,実際にCGIで表示した時には じゃわ のように置換されて表示されます.
実際に使っている例では,

<b>${now_hour}</b>時 <b>${now_min}</b>分

という記述があり,これは実際には

1230

のように置換 されて,表示されます.
置換変数はどこででも利用できるシステム系と,<!logloop!>〜<!/logloop!>タグ内でのみ利用できるログ系の2つに分かれています.
■ 置換変数 - システム系

システム関連
${sys_bbs_title} BBSのタイトルになります
${sys_cgi_name} CGIスクリプト名になります
${sys_log_page} 1ページに表示するログ数になります(数値)
${sys_max_log_line} ログの最大登録数になります(数値)
${sys_log_page_max} 総ページ数になります(数値)
${sys_log_page_now} 現在のページ番号になります(数値)
時間関連
${now_sec} 現在時刻の'秒'になります(数値)
${now_min} 現在時刻の'分'になります(数値)
${now_hour} 現在時刻の'時'になります(数値)
${now_day} 現在時刻の'日'になります(数値)
${now_mon} 現在時刻の'月'になります(数値)
${now_month} 現在時刻の'月'の英語略になります(Jan,Feb,…,Dec)
${now_year} 現在時刻の'年'になります(数値)
${now_week} 現在時刻の'週'の英語略になります(Sun,Mon,…,Sat)
${now_youbi} 現在時刻の'週'の漢字になります(日,月,…,土)
クッキー関連
${cookie_name} クッキーに保存された名前になります
${cookie_mail} クッキーに保存されたメールアドレスになります
${cookie_url} クッキーに保存されたURLになります(http:// なし)
${set-cookie} 登録用のクッキー文字列になります
文字コード関連
${charcode} 文字コードになります(sjis,euc,jis)
${charset} 文字コードになります(Shift-JIS,x-euc-jp,iso-2022-jp)
URL関連
${url_home} ホームページのURLになります
${url_image} 画像元のURLになります
${url_default} 掲示板の初期状態のURLになります
(管理用なら管理用のトップページへ)
${url_top} 掲示板のトップページのURLになります
${url_back} 一つ前のページのURLになります
${url_next} 一つ後のページのURLになります
${url_admin} 管理用のURLになります
${url_setup} セットアップ用のURLになります
${url_template} テンプレートを移動するためのURLになります
■ 置換変数 - ログ系

ログ関連
${log_id} ???
${log_no} 投稿されたログの識別番号になります
${log_thread} 現在利用されておりません(使用不可)
${log_title} 投稿されたログのタイトルになります
${log_name} 投稿されたログの名前になります
${log_mail} 投稿されたログのメールアドレスになります
${log_url} 投稿されたログのURLになります(http:// なし)
${log_icon} 現在利用されておりません(使用不可)
${log_ipad} 投稿されたログのIPアドレスになります
${log_comment} 投稿されたログのコメントになります
時間関連
${log_sec} 投稿されたログの'秒'になります(数値)
${log_min} 投稿されたログの'分'になります(数値)
${log_hour} 投稿されたログの'時'になります(数値)
${log_day} 投稿されたログの'日'になります(数値)
${log_mon} 投稿されたログの'月'になります(数値)
${log_month} 投稿されたログの'月'の英語略になります(Jan,Feb,…,Dec)
${log_year} 投稿されたログの'年'になります(数値)
${log_week} 投稿されたログの'週'の英語略になります(Sun,Mon,…,Sat)
${log_youbi} 投稿されたログの'週'の漢字になります(日,月,…,土)
■ 特殊ファイル名について

新・JawaNoteでは,いくつかの特殊なファイル名があります.
これらの特殊なファイル名は必要な時にCGIから呼び出されます.
最低限,default.html と admin.html が必要です.
  • default.html
    CGI本体を呼び出した時,デフォルトで呼び出されるHTMLテンプレートとなります.
    このファイルがないと,CGIは動作しません.
  • admin.html
    管理用を呼び出した時に,使用されるHTMLテンプレートとなります.
    このファイルは管理用パスワードが一致した場合にのみ,使用できるHTMLテンプレートです (逆にいえば,これ以外のファイルは管理用パスワードに関係なく使用できます).
    このファイルがないと,管理用を使用できません.
  • error.html
    エラーが発生した時に,使用されるHTMLテンプレートとなります.
    なくてもかまいません.
  • password.html
    パスワード入力が発生した時に,使用されるHTMLテンプレートとなります. なくてもかまいません.
新・JawaNote
This script is free(Copyright (C) 1996-2003 CGI-StaTion 'Jawa')