[PHP-users 32808] Re: クッキーの発行
miyao
miyao @ sa.il24.net
2007年 11月 5日 (月) 16:24:20 JST
宮尾です
ご指導有り難うございます
御指摘頂いたとおりにやってみたのですが上手く動作
してくれませんでした。
今回は私が自作したプログラムを載せておきます。
アクセスカウンタのプログラムです。2重カウント防止策として
クッキーを利用しようと考えております。
下記のプログラムを count.inc というファイル名で作成し ***.php
からインクルードしています。
<?PHP
$path = "counter/image/"; // カウンタ画像のあるディレクト
リ
$filename = "counter/count.dat"; // ファイル名の設定
$fig = 5; // カウンタの桁数
$file = fopen($filename, "r+"); // 読み書きモードでファイルをオープン
flock($file, LOCK_EX); // 書き込みに対しファイルをロッ
ク
$count = fread($file, filesize($filename)); // カウント数を取得する
if ( isset($_cookie['testcookie']) == "") {
$count = $count + 1; // カウントアップ
}
rewind($file); //ファイルポインタを先頭に移す
fputs($file, $count); //ファイルに書き込む
fclose($file); // ファイルを閉じる
$cnt = sprintf("%0".$fig."d", $count); // 桁数のフォーマット
$size = getimagesize($path."0.gif"); // 画像のサイズオプションを0.gif
で取得
// ループ1 START:桁数分だけIMGタグを出力ループ
for ($i = 0; $i < strlen($cnt); $i++){
$n = substr($cnt, $i, 1); //左から一桁ずつ取得
echo "<IMG SRC=\"$path$n.gif\" alt=$n $size[3]>";
}
// ループ1 END
$timeout = time() + 7 * 24 * 3600; // クッキーの有効期間を
1週間とする
setcookie("testcookie", $count, $timeout); // クッキーの発行
?>
ご指導下さい
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
宮尾 勝巳 ( Katumi Miyao )
E-mail : miyao @ sa.il24.net
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
> > setcookie("testcookie", $count, time() 7 * 24 * 3600);
> ↓↓↓
> $timeout = time() + 7 * 24 * 3600;
> setcookie("testcookie", $count, $timeout);
> > $test = $_cookie("testcookie");
> ↓↓↓
> $test = $_cookie["testcookie"];
PHP-users メーリングリストの案内