ユーザーが閲覧したことを示すために各記事に COOKIE を追加するのは合理的ですか?

WBOY
リリース: 2016-06-13 12:00:44
オリジナル
809 人が閲覧しました

ユーザーが閲覧したことを示すために各記事に COOKIE を追加するのは合理的ですか?
私が最近取り組んでいる記事システムの機能の 1 つは、現在の記事の閲覧数 (トラフィック) をカウントすることです。


私の記事のアドレスは news.php?id=123

オンラインで見つけた方法です

<br />$gid = $_GET["id];<br />if( !isset($_COOKIE["user"]) ){ <br />	setcookie("user","newGuest",time()+3600); <br />}else { <br />	setcookie("user","oldGuest"); <br />} <br /><br />if ( $_COOKIE["user"] != "oldGuest") {<br />	$hits_now = $row["hits"]+1;<br />	$pdo->exec("UPDATE `gamedb_game` SET `hits`='$hits_now' WHERE `id` = '$gid'");	<br />}
ログイン後にコピー



この中にこの場合、同じブラウザで2回目以降は閲覧数が増えません

違うと思い、初めて閲覧しても閲覧数が増えてしまいました。再生回数が増えなかった

だからこうした方が良いのでは?

<br />$gid = $_GET["id];<br />if( !isset($_COOKIE["user"]) ){ <br />	setcookie("user","newGuest",time()+3600); <br />}else { <br />	setcookie("user","oldGuest_$gid"); <br />} <br /><br />if ( $_COOKIE["user"] != "oldGuest_$gid") {<br />	$hits_now = $row["hits"]+1;<br />	$pdo->exec("UPDATE `gamedb_game` SET `hits`='$hits_now' WHERE `id` = '$gid'");	<br />}
ログイン後にコピー


oldGuest を oldGuest_$gid に変更します。最後に記事IDを追加すると一意になりますよね?

しかし、これが事実である場合、ユーザーのブラウザーに悪影響を与える可能性がありますか?範囲?

それとも他の cms はこれを行いますか?

SQL を書きたい場合は、そうする必要があります。初めて一致させる場合は、複雑すぎます。

思い浮かぶのは Cookie だけです


このメソッドは自分のホストとユーザーに何をしますか?
-----解決策------ --------------
毎回更新して再生数を増やすのは問題ありませんが、
どうしても自分の方法で再生を防ぎたい場合は多くの Web サイトでは、キャッシュに保存し、抽出する時間を設定して、指定した時間に 1 回フェッチすることができます。
このメソッドでは、記事 ID を配列に入れてシリアル化し、Cookie に保存してみてください。
------解決策---------
ユーザーが閲覧した記事のタイトルを記録します。 Cookie、次回ユーザーが記事を表示するために Web ページを再度開くと、最後にその記事を閲覧したときの記録が残ります。
これは、ショッピング ウェブサイトで商品を閲覧するときと似ています。見に行くと、最後の閲覧体験が記録されます。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート