jquery と css ベースの星評価システムを作成しました。今では、ユーザーの投票をデータベースに保存する方法を本当に考えることはできません。そして最も重要なのは、1 人のユーザーを 1 票に制限する方法です。
サイトの訪問者数が膨大であるため、各ユーザーの IP をデータベースに保存する余裕はありません。さらに、私のIPアドレス自体も動的であるため、うまく機能するとは思いません。インターネットを切断して再接続するたびに、IP が変更され、再度投票できるようになります。だから私はこれがうまくいくとは思わない。
これは、投票をデータベースに保存することについて私が考えたことです。ページが受け取った投票数を保存するだけでなく、ページの合計評価を保存することもできません。
評価ポイントを投票数で分けるのは間違っています。平均評価を与えてくれます。右?
しかし、1 人のユーザーを 1 票に制限する方法は考えられません。助けてください。
質問する
2006 次
2 に答える
5
Web 上で 1 人 1 票を厳密に強制する実際的な方法はないようです。
コンピュータ ネットワークでは、人の代理を使用することがよくあります。それらのいくつかは
- ネットワークまたはアプリケーションのログイン、
- 電子メールアドレス、
- IPアドレス、
- クッキー、
等々。しかし、これらはいずれも1人1票となると問題があります。
- Webログインの場合、通常、1 人が複数のアカウントを作成できます。(特に無料の場合。)
- 電子メール アカウントは無料で、多くの (ほとんど?) 人が複数の電子メール アカウントを持っています。
- IP アドレスは機能する可能性がありますが、共有されていないコンピューターを使用するイントラネット (コンピューターごとに 1 つの IP アドレスで実装) (コンピューターごとに 1 人という会社のポリシー) でのみ機能します。
- Cookie には Web ログインと同じ問題があります。(そして、それらはユーザーが削除できます。)
1票が本当に価値のあるものなら、わざわざ2回投票する人もいるでしょう。しかし、ほとんどの投票はあまり価値がありません。
于 2012-10-10T02:14:25.090 に答える
0
インデックスを使用してデータベースを構造化することを検討してください。ユーザー/お気に入りの組み合わせごとに 1 つの行のみを挿入できるユーザーお気に入りシステムを作成しました。たとえば、ユーザーがお気に入りを選択すると、データベースに格納される値はユーザー ID とお気に入り ID になります。ユーザーが再度選択しようとしても、完全に重複しているため、データベースは行を挿入しません。
于 2012-10-10T01:54:56.077 に答える