匿名質問者

phpでテキストファイルを読み込むプログラムを作成しました。

このページに訪れると1日1回ランダムで文字を出したいのですが、
下記のソースに
クッキー(Cookie)を使って、訪問回数を制御する方法を追加実装するにはどこに追加すればよろしいでしょうか?
どなたか教えて頂けないでしょうか。
よろしくおねがいします。

参考のソースが下記になります。
<?php

$txt = fopen("/text.txt", "r"); //テキストファイルオープン
while(!feof($txt)){
$line = fget($txt, 1000, '<p>'); //一行の読み込むバイト数(半角1000文字)
$line = trim($line);
if($line == ""){continue;} //空白無視処理
$data[] = $line;
}
$count = count($data)-1;
$no = mt_rand(0,$count);
$out_txt = $data[$no];
print "$out_txt"; //出力部


?>

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2019/04/18 13:40:05

回答1件)

匿名回答1号 No.1

こんな感じでどうでしょうか
好きな位置に書けば良いと思います

function visited_count($expire = 0, $path = "/", $domain = "", $secure = FALSE, $httponly = FALSE){
if (isset($_COOKIE["visited"]) && is_numeric($_COOKIE["visited"])){
$count = $_COOKIE["visited"] + 1;
}else{
$count = 1;
}
setcookie("visited", $count, $expire, $pat, $domain, $secure, $httponly);
return $count;
}

// 有効期限 7日
$expire = time() + 3600 * 24 * 7;
$visited = visited_count($expire);
echo $visited;

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません