[PHP-users 32811] Re: クッキーの発行

萩原 namioh @ sea.plala.or.jp
2007年 11月 5日 (月) 17:00:06 JST


クッキーの動作は問題ないです。
一つ一つ分解して確認し原因を見つけたほうがいいですよ。

■例 
$count = "test";
$timeout = time() + 7 * 24 * 3600;
setcookie("testcookie", $count, $timeout);
print_r($_COOKIE); //配列確認用

2度目の更新でクッキーにtestが入っているのを確認できます

> if ( isset($_cookie['testcookie']) == "") {
↓↓
> if (!isset($_cookie['testcookie'])) {

----- Original Message ----- 
From: "miyao" <miyao @ sa.il24.net>
To: "'PHP-users ML'" <php-users @ php.gr.jp>
Sent: Monday, November 05, 2007 4:24 PM
Subject: [PHP-users 32808] Re: クッキーの発行


> 宮尾です
> ご指導有り難うございます
> 御指摘頂いたとおりにやってみたのですが上手く動作
> してくれませんでした。
> 今回は私が自作したプログラムを載せておきます。
> アクセスカウンタのプログラムです。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 mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3 



PHP-users メーリングリストの案内