

PHPの有料講座で課題が出ましたが、
解答がないのでここで質問させてください。
PHPでCookieを使って、下記のような訪問回数を表示するカウンターを作りたいです。
よろしくお願いします。
cookieを使って訪問回数カウンターを作ってみよう
・PHPでCookieを使って、下記のような訪問回数を表示するカウンターを作ってください。
初回訪問時は「ようこそ!初めての訪問ありがとうございます!」と出力
2回目以降の訪問は「こんにちは!あなたの訪問は2回目です!」と出力(数値は訪問毎に増える)
10回訪問したらカウンターをリセットする
クッキーの有効期限は24時間に設定する
ヒント
Cookieの発行にはsetcookie関数を使う
Cookieを受け取るには$_COOKIE変数を使う
自分の書いたコード
<?php
setcookie('username','yamada',time()+60*60*24);
echo $_COOKIE['username'];
echo 'ようこそ!初めての訪問ありがとうございます!';
echo 'こんにちは!あなたの訪問は2回目です!';
?>
このように、もうすでに行き詰っています
No.2ベストアンサー
- 回答日時:
dice_zk1 さん
・・・・・cookieを使って訪問回数カウンターを作ってみよう・・・・・・・
ご参考に↓
<?php
if ( isset($_COOKIE["username"]) ){ //cookieがあるとき
$n = $_COOKIE["username"] +1;
if($n > 10){ $n = 0;} // カウンターをリセット
echo 'こんにちは!あなたの訪問は'.$n.'回目です!';
} else{//初めての訪問
echo 'ようこそ!初めての訪問ありがとうございます!';
$n = 1;
}
setcookie( "username" ,$n,time() + 3600*24);
?>
私の求めている解答を有難うございます。
$n = $_COOKIE["username"] +1;
はおそらく、
$n = $_COOKIE[$n] +1;
が正しいのですね。
{}の一対の関係がよくなかったのか、微妙に上手くいきませんでした。おしいです!
No.3
- 回答日時:
>$n = $_COOKIE["username"] +1;
>はおそらく、
>$n = $_COOKIE[$n] +1;
>が正しいのですね。
間違ってるかと。※添付図はNo.2(gura_さん)のをそのまま実行。

No.1
- 回答日時:
クッキー処理の定石は
1. クッキーを読み取り値を得る
2. 値を編集する
3. 値をクッキーに書き込み
-- ここまで画面表示は禁止 --
4. 値を元に表示
参考)
https://www.php.net/manual/ja/language.variables …
今回ならば
1. クッキー 'count' を読み取り → $c / 無ければ 0 → $c
2. $c を加算 / 10以上なら1 → $c
3. $c を書き込み → クッキー 'count'
4a. $c が 1 なら "初回" を表示
4b. 上記以外なら "{$c}回" を表示
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
shシェルスクリプト 空白行の...
-
変数の受け渡しによる画像の表示
-
findstrのerrorlevel
-
バッチファイルでpingの結果を...
-
DBのハッシュ化したパスワード...
-
pdftkを使った処理をバッチファ...
-
Windowsのsetコマンドでの小数...
-
コマンドプロンプト フォルダ内...
-
syntax error, unexpected 'ech...
-
小数点以下0の非表示
-
for文でのデクリメント
-
Excel VBA:特定の文字列以降(...
-
excel access連携 このテーブル...
-
開始と終了を指定して、その間...
-
「取得先」という表現について
-
DTOとEntityの差は何ですか。
-
ps3で久しぶりにCDの音楽情報取...
-
strtotime 前月・前々月の表示
-
INIファイルに一括書き込みを行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
switch()文で値の大小比較
-
findstrのerrorlevel
-
ゼロとNULLを区別して number_f...
-
小数点以下0の非表示
-
バッチファイルで、全てのウィ...
-
syntax error, unexpected 'ech...
-
PHPで画像を取得、保存する方法
-
【初歩】 for構文内におけるロ...
-
コマンドプロンプト echo onで...
-
画像の削除
-
ISSETで変数に値が入っていない...
-
phpでcookieがうまく保存されない
-
pdftkを使った処理をバッチファ...
-
phpで「+=」と「=+」の違いは?
-
Windowsのsetコマンドでの小数...
-
4桁の乱数の発生
-
オブジェクトの中身の判定(PHP)
おすすめ情報