#!/usr/bin/perl ##===================================== ## 初期設定 ##===================================== # 管理用パスワード $password = '4649'; # 新着情報のページ $page = 'news.shtml'; # データファイル $datafile = 'news.txt'; # ロックディレクトリ $lock_dir = './lock/'; ##===================================== ## サブルーチン ##===================================== require './jcode.pl'; require './stdio.pl'; require './sub.pl'; #********************************************************************************************************************** # ↓ ここから下を修正した場合にはサポート対象外になります。ご注意ください ↓ #********************************************************************************************************************** ##===================================== ## データを取得(ハッシュに格納) ##===================================== %param = (); @keys = stdio::getFormData(\%param, "", "SJIS", ";"); #************************************************************************************************** モード (なし) if(!$param{'mode'}){ ##===================================== ## データファイルをオープン ##===================================== @datafile = &fileopen($datafile); $newsfile = join "", @datafile; $newsfile =~ s/
//g; stdio::trString(\$newsfile, "1"); ##===================================== ## HTML出力 ##===================================== print <<"EOF"; Content-type: text/html 新着情報
新着情報ページ


パスワード:
※タグも使えます。
※<br> のタグは入力の必要がありません。テキストエリア内で改行すると <br> が自動で入ります。
※< > の閉じ忘れに注意してください。 EOF exit; } # モード (指定なし) ここまで #************************************************************************************************** モード (regist) elsif($param{'mode'} eq 'regist'){ ##===================================== ## パスワードのチェック ##===================================== if(!$param{'password'}){ &error('エラー','パスワードを入力してください。'); } if($param{'password'} ne $password){ &error('エラー','パスワード認証に失敗しました。'); } ##===================================== ## 改行を
に変換 ##===================================== $dic = qq|
|; $param{'news'} =~ s/\n/
\n/g; if($param{'news'} =~ /DIC-Studio/){ ; } else{ $param{'news'} .= $dic; } ##===================================== ## 予約データを書き込み ##===================================== if(stdio::lockCheck($lock_dir)){ stdio::lock($lock_dir); } else{ &error('エラー','只今込み合っております。
少し時間をおいてアクセスしてください。'); } if(!open(OUT,">$datafile")){ stdio::unlock($lock_dir); &error('システムエラー','データファイルを書き込みオープンできませんでした。'); } print OUT $param{'news'}; close(OUT); stdio::unlock($lock_dir); ##===================================== ## HTML出力 ##===================================== print <<"EOF"; Content-type: text/html 新着情報
新着情報ページ

登録完了しました。
EOF exit; } # モード (regist) ここまで