iMODE(携帯)対応のCGIカウンタ

[上に] [前に] [次に]
ys 2000/05/22(月) 20:56:10
iMODE(携帯)対応のCGIカウンターを
探しています。

テキスト表示のカウンター
SSIは利用できません

?_? 2000/05/22(月) 20:58:15
> テキスト表示のカウンター
> SSIは利用できません

そうなんですか?

ys 2000/05/22(月) 22:46:32
いえ
これは私の希望です(^^ゞ

テキスト形式のシンプルなのが好きだからです。
あと設置する場所がSSI不可なんです。

?_? 2000/05/22(月) 22:55:38
> テキスト形式のシンプルなのが好きだからです。
> あと設置する場所がSSI不可なんです。
i-modeでSSIが利用できないと誤読しました。
申し訳ない。
SSIの使えないサーバー環境なんですね。(ナットク)
i-modで画像なんか使われたら通信費が・・・・ネ!!
とうぜんテキストがいいよね。

このさい、カウンタを自作してみませんか?
CGIを覚えるのに簡単でいい材料だと思うよ。

?_? 2000/05/23(火) 01:01:34
アクセスカウンタの基本的な機能は次のようなものです。

  (1).WebページがアクセスされたときにCGIスクリプトを起動する
  (2).カウンタの累計値を1つ増やす。
  (3).結果(現在の累計値)を表示する。

以下基本的なカウンターのサンプルです。
----------------------------------------------------------------------
#!/usr/local/bin/perl

$countfile = "/access_dir/count.dat";  #絶対パスが基本

#(2)カウンタの累計値を加算
open(COUNTER,"$countfile") or die "$countfileオープン失敗";
$count = <COUNTER>; #現在までの累計値を取得
close COUNTER;

++$count; # 累計値にプラス1

#累計値を更新
open(COUNTER,">$countfile") or die "$countfile オープン失敗";
print COUNTER $count;
close COUNTER;

#(3)表示部
print "Content-type: text/html\n\n"; #HTML文で表示する
print $count;
__END__
---------------------------------------------------------------------

あとは自由に改造してみて。
動作確認、サポート無し。

2000/05/23(火) 06:06:27
<?php
   $file =  "count_file_dir/count_filename";

    //ファイルをreadモードでopenする。
   if(!($fp = fopen($file, "r"))){
      /* ファイルが開けないときは終了 */
     echo  " Can not open file read mode";
     exit;
   }

   $count = fgets($fp, 256);
   fclose($fp);               //ファイルのクローズ
   $count = (int)$count;      //ファイルから読み込んだ文字列を整数にキャストする。
   $count++;                  //カウントを1つ増やす。

    //ファイルをwriteモードでopenする。
   if(!($fp = fopen($file, "w"))){
      /* ファイルが開けないときは終了 */
     echo  " Can not open file write mode";
     exit;
   }
   fseek($fp, 0);           //ファイルの先頭にポイントを戻す。
   fputs($fp,  "$count");   //カウントを文字列としてファイルの書き込む。
   fclose($fp);             //ファイルのクローズ
?>

ys 2000/05/23(火) 14:16:16
うぉ!
・・・わからない(T_T)

?_?さんのは一行目を自分のところにあわせて
count.datが置いてある場所のアドレスを書けば良いんですよね?
htmlのほうには、なんて記述してcgiを呼び出すんですか
って サポート無しって書いてあるし(笑)

ヒさんのは、もっとわからない(T_T)(T_T)
?_?さんのを上記のように改良するってことですか?
その場合、どの辺に埋め込めばよいのでしょうか

ヒソカ 2000/05/23(火) 14:45:13
"ヒ"さんのサンプルはperlじゃなくてphpですね。

>?_? 2000/05/23(火) 18:52:34
ファイル開けなかったばわい、
さばえら出るのでだめだね。。

@_@ 2000/05/23(火) 18:56:18
#(3)表示部
print "Content-type: text/html\n\n"; #HTML文で表示する
print << "HTML";
<html>
<head>
<title>ほげー。</title>
</head>
<body>
$count人目のお客様でやんす<br>
よーこそホームページへ<br>
</body>
</html>
HTML

exit;

__END__

?_? 2000/05/23(火) 19:14:23
単なる素材ですから、よってたかっていじりまわしてチョ!

Syn [E-Mail] 2000/05/23(火) 19:28:21
> 単なる素材ですから、よってたかっていじりまわしてチョ!

この Perl スクリプト自体でカウンタ数値を含んだ HTML を出力し
ているので、

> htmlのほうには、なんて記述してcgiを呼び出すんですか

ってのが的外れとゆうか、「htmlのほう」なんてのは存在しません
よと言ってあげたほうが親切だと思います。
あと、

> 一行目を自分のところにあわせて
> count.datが置いてある場所のアドレスを書けば良いんですよね?

これも違う(^_^;

# つまり、 SSI を使わずにテキストでカウンタを表示するには、
# 動的に HTML を出力しないといけないので、全体を CGI で出す
# ようにしないとダメなんですよってことです
# カウンタレンタルサービスでは不可能ですし、 CGI の知識がな
# いと難しいです

?_? 2000/05/24(水) 02:52:09
だから、自作してみませんかって。

Syn [E-Mail] 2000/05/24(水) 09:41:28
あ、よく読むと、「カウンターを探しています」は「カウンタのサ
ービスを提供してくれるところを探しています」じゃなくって「カ
ウンタの CGI スクリプトを探しています」なのですね。 たぶん。

> あと設置する場所がSSI不可なんです。

こうおっしゃっているんだし、設置の知識がないと思ったのはわた
しの邪推でした。 もうしわけないです。

@_@ 2000/05/24(水) 16:30:20
カウンタ入りCGIしきHTML表示君(謎
のファイル名はindex.cgiとかで、

$countfile = "./count.dat";
にすれば、このCGI(index.cgi)と
同じ場所にcount.dat(0と書いただけのテキストファイル)
をおけばええんちゃうか?

?_? 2000/05/24(水) 21:42:02
> カウンタ入りCGIしきHTML表示君(謎
このセンス好き。

[上に] [前に] [次に]