かんたん作成【HTML CSS JavaScript PHP CGI Perl Ruby Python .htaccess】

アクセスカウンター(今日・昨日)

#! /usr/local/bin/perl

$url    = "../../sample/img/no/";                    # 画像保存先
$file    = "./dat/counttoday.dat";                    # カウント保存先ファイル

open(FILE, "+<$file");                            # カウントの読み込み
eval{ flock(FILE, 2) };
$count = <FILE>;

($total, $today, $yesterday, $ip, $date2) = split(/\t/, $count);    # 分割(トータル、今日、昨日、IP、日付)

if($ENV{'REMOTE_ADDR'} ne $ip) {                    # IPアドレス確認(同一IPアドレスはカウントしない)

    my    ($sec, $min, $hour, $date) = localtime(time);        # 今日の日付

    if($date ne $date2) {                        # 日付確認(日付がかわった場合)
        $yesterday = $today;                    # 昨日のカウントを$todayの値に変更
        $today = 0;                        # 今日のカウントを0に
    }

    $total++;                            # トータルのカウント(+1)
    $today++;                            # 今日のカウント(+1)

    seek(FILE, 0, 0);                        # カウントの書き込み
    print FILE "$total\t$today\t$yesterday\t$ENV{'REMOTE_ADDR'}\t$date\t";
}

close FILE;

print qq(Content-type: text/html\n\n);                    # HTML出力
print qq(<html>\n);
print qq(<head>\n);
print qq(<title>アクセスカウンター</title>\n);
print qq(</head>\n);
print qq(<body>\n);
print qq(<center>\n);
for($i = 0 ; $i < length($total) ; $i++) {                # 画像を表示
    my    $n = substr($total, $i, 1);                # 1文字抜き出す
    print qq(<img src="$url$n.gif" alt="$n" width="25" height="25">);
}
print qq(<br><small>今日:$today 昨日:$yesterday</small><br>\n);
print qq(</center>\n);
print qq(</body>\n);
print qq(</html>\n);

exit;
CGI(Perl)
Hello world ! ユーザーエージェント取得・表示($ENV{'HTTP_USER_AGENT'})
IPアドレス取得・表示($ENV{'REMOTE_ADDR'}) リンク元取得・表示($ENV{'HTTP_REFERER'})
URL取得・表示($ENV{'HTTP_HOST'}, $ENV{'REQUEST_URI'}) 環境変数を全て表示(%ENV)
ホスト名取得・表示(gethostbyaddr) 訪問者のプロバイダーを表示
訪問者の都道府県を取得・表示 日付を表示(localtime time)
日付を画像表示(localtime time, substr) アクセス日時を表示(localtime time)
指定の日までの日数を表示 曜日によって背景色を変える
日によって背景色を変える 月によって背景色を変える
見るたびに背景色を変える 見るたびに背景画像を変える
おみくじ(rand, int) カラーチャート
Shift_JIS文字コード表 UTF-8文字コード表
グラフ(横棒グラフ) アクセスカウンター
アクセスカウンター(画像) アクセスカウンター(今日・昨日)
訪問回数(クッキー, $ENV{'HTTP_COOKIE'}, Set-Cookie) アクセスログ保存
アクセスログ集計 パスワード認証
クッションページ($ENV{'QUERY_STRING'}) クッションページ($ENV{'PATH_INFO'})
フォーム入力内容をクッキーに保存 1つのCGIでフレームページを表示
IPアドレスからホスト名を取得(gethostbyaddr) ホスト名からIPアドレスを取得(gethostbyname)
IPアドレスからプロバイダーを取得 IPアドレスから都道府県を取得
文章中の文字列を別の文字列に一括変換 カレンダー
カレンダー(前月・次月へのリンク付) カレンダー(今年1月〜12月)
掲示板 掲示板(URL自動変換/連続改行・スペース削除)
掲示板(年齢・性別・都道府県選択) 画像アップロード掲示板
チャット Web日記
サイトマップ(ディレクトリ内のファイルを調べる) Webデータ取得(HTTPヘッダー, HTMLソース, use Socket)
Webデータ取得(HTTPヘッダー, HTMLソース, use HTTP::Request::Common) トラックバック受信
トラックバック送信 メール送信(メールフォーム, sendmail)
リバーシ(ボードゲーム) .htaccessユーザー認証用ユーザーファイル作成
リダイレクト 条件指定リダイレクト
言語振り分けリダイレクト 条件指定アクセス拒否(ステータスコードを返す)
HTMLファイル読み込み・表示 HTMLファイル読み込み・パスワード認証
HTMLファイル読み込み・条件指定アクセス拒否 HTMLファイル読み込み・条件指定リダイレクト
外部CGIファイル読み込み(require) 画像ファイル読み込み・表示
画像縮小・拡大・サイズ変更(Image::Magick, Resize) 画像切り出し(Image::Magick, Crop)
画像文字埋め込み(Image::Magick, Annotate) 画像合成(Image::Magick, Composite)
画像生成・保存(Image::Magick->new) 画像合成アクセスカウンター
かんたん作成【HTML CSS JavaScript PHP CGI Perl Ruby Python .htaccess】