問題タブ [voting-system]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 人々が 1 日 1 回投票できる投票システムを悪用するのを防ぐには?
オンライン動画の投票システムを実装しました。訪問者は 1 日に 1 回しか投票できません。メールアドレスとタイムスタンプを組み合わせて、各投票がその日の一意であることを確認します。
ご想像のとおり、これは mailinator.com などで使い捨てのメール アドレスを登録してシステムを悪用する人々につながるため、同じ人物による複数の投票を可能にする他の投票アルゴリズムを実装しようとした人がいるかどうか疑問に思っています。さらに、この設定は、ビデオ #1 にビデオ #2 よりも多くの人が関連付けられている場合、ビデオ #1 がすでに不当に有利であることを意味します。
ランク付けされたシステムについて考えていますが、偽の電子メール アドレスで誰かがシステムを悪用するのをどのように防ぐことができるか完全にはわかりません。私が解決しようとしている問題は次のようなものです。
A、B、X の 3 つの動画があるとします。A には 5 人、B には 2 人、X には 4
人が参加しています。3 つの動画の中で X が最高の動画であり、人々が毎日投票できると仮定すると、投票システムはありますか?それは「B」がトップに立つのに役立ちますか?
私が言ったように、私が提案するランク付けシステムでは、2 位の数が 1 位の数を上回っている場合、それが勝者であると想定しても安全であると仮定しますが、それは不完全なようです。
誰かが以前にこのようなことに取り組んだことがありますか? これらはかなり少量の結果 (7 日間で平均約 500 票) であるため、2 人が実際に違いを生む可能性があることを覚えておいてください。
これは、共有ホスティング環境の LAMP (PHP) スタック上にあります。
また、なぜ同じ人による複数の投票を許可しているのか疑問に思っているのであれば、それは上層部がこれがサイトへのトラフィックを促進するのに役立つことを認識しており、グラフが上がるのを見るのを本当に楽しんでいるからです (その後のヒットはかなりのものであるにもかかわらず)無意味)。
事前に感謝します。他の情報が必要な場合はお知らせください。
mysql - 投票システムのパフォーマンスを向上させる方法は?
投票システム (好き/嫌い) を備えた Web サイトを持っています。
アプリケーションは別の開発者によって開発されており、現在、Web サイトはますます大きくなっており、パフォーマンスが真剣に考慮されています。
私は次の表を持っています:
トークン列は、各ユーザー/投票/日付を識別するために使用されます。これは、ユーザーの指紋の一部である一意のトークンであり、一度投票して投票タイプを変更できるようにします。
最も遅いクエリの 1 つは次のとおりです。
サーバーがシャットダウンしていない場合、戻るのに 10 秒近くかかることがあります。
ここではキャッシュを使用できません。投票を許可するかどうかをリアルタイムで確認し、カウントをインクリメントする必要があるためです。
アプリケーションのあらゆる場所で使用されている依存関係に依存しすぎているため、多くのアプリケーション ロジックを変更することはできません (設計が不適切でした)。
そのため、パフォーマンスを少しでも改善するためのオプションを探しています。
編集:トークン列にインデックスがあります
〜2,000,000行あり、すべてのトークンはほぼ一意です
編集:
私はあなたのすべてのアドバイスでベンチマークを実行しました:
3 番目のクエリが最も速い場合もありますが、最悪の場合もあります。
各クエリが20回実行される場所で10回実行しました
このベンチマークを INDEXES なしで実行しました (上の 1 つを除くid
) 。
それは奇妙です、私は COUNT(id) がクエリを少し高速化したと思います。
php - Mysql+PHPで実装した投票システム(アカウントあり)の性能
私は現在、コメントの良いオプションと悪いオプションを備えた投票システムを作成しています。基本的に、アイデアは facebook のものに似ていますが、コメントには悪いオプション (またはそれ以上) があります。これがテーブル構造です
したがって、ユーザーが投票すると、レコードが上記の形式で mysql データベースに保存されます。これを行う理由は、ユーザーに再投票させたくないためであり、ユーザーの好きなもの/嫌いなものを記録したいからです。 .
私の質問は、私のウェブサイトに 10,000 のコメントがあり、各コメントが 1,000 票を獲得した場合、私のデータベースは非常に大きくなります。または、私の場合はコメントごとにテーブルを作成する必要があります。事前に感謝します。
c# - 投票機能はどっちがいい?
投票機能を進めるのに最適なシステムはどれですか?その理由は? ;
投票をデータベーステーブル内に別々に配置し、必要に応じて平均を計算する
1 つの製品に対して 1 つの行しかありません。新しい投票が来たら、その投票フォーム データベースを取得し、再度計算してレコードを更新します。たとえば、製品 1 の投票記録があります。その投票は、データベース内で合計 326 であり、45 人が投票しました。次に、製品 1 に対する 4 の新しい投票を受け取ります。データベースからレコードを取得し、次の関数を実行します。
(326 + 4) / (45 + 1)
次に、合計値 330 と 46 を有権者としてデータベースに再度保存します。
私はいつも最初のオプションを先に進めますが、他の人が何をしているのか知りたいです.
ruby-on-rails - 2枚の絵から選べる投票システム
Rails 3 で画像投票システムを作成しようとしています。私が実現したいのは、2 つの画像を用意し、サイト上のユーザーにどちらが好きか投票してもらうことです。投票システムをすばやく作成するthumbs_up gemがあることは知っています。写真で機能するように宝石を変更する方法はありますか、またはこれを作成する簡単な方法はありますか?
java - 投票システムに論理的な問題がある
上下投票システムに関するヘルプを探しています。
現時点では、投票したユーザー、投票されたユーザー、および投票された情報 (駐車場) を参照する投票テーブルがあります。
投票タイプは、投票なしの場合は 0、賛成票の場合は 1、反対票の場合は 2 です。
今、私は少し論理的な問題を抱えています。
例えば
- ユーザーがすでに parking_spot に投票した場合
ユーザーがすでに投票したかどうか、および挿入していないかどうかを確認するにはどうすればよいですか。
ユーザー (uploaded_by_user_id) スコアを更新するにはどうすればよいですか。賛成票の場合はプラス 1、反対票の場合はマイナス 1 です。
したがって、一般的な流れは次のようになります。
ユーザーが投票を押すと、サーバーはすでに投票されているかどうかを確認します。投票されている場合は、再度投票することはできません。そうでない場合は、vote_casted_user_id = 現在のユーザー、parking_spot_id = 現在の情報、uploaded_by_user_id = 情報をアップロードした人であり、upload_by_user スコアは投票の種類に応じて更新されます。
MYSQL データベースへの JDBC 接続で Java サーブレットを使用しています。
私に何かアイデアはありますか?
ruby-on-rails - コメントごとにユーザーごとに 1 票を実装する方法は?
私は現在、vote_upとvote_downというメソッドを持つコメントコントローラーを持っています。これが私のvote_upの現在の仕組みです。
私のコメント モデルには、説明とカウント フィールドがあります。
これにより、複数の賛成票と反対票が可能になります。ユーザーがコメントごとに 1 回だけ投票できるように設計するにはどうすればよいでしょうか。
applescript - AppleScript で投票投票を行う方法
伝統的に、各人は 1 票しか得られません。投票投票でも同じことをしたいと思います。
仕事で Mac OS X にたくさんのアカウントを持っています。私たちは誰かを新しい部門長として選出する投票を行っています (いや、誰とは言いません) 彼がその仕事に適任かどうかを確かめるためです。私たちのために仕事をする小さなスクリプトを書くことにしました。ただし、私ができることは 1つだけです。ユーザーが 1 回だけ投票できるようにすることです。私のスクリプトは次のとおりです(明らかにコンパイルされません):
「これまでに何を試しましたか?」と尋ねることはわかっています。だから私はあなたに言います。試してみget the current user
ましたが、役に立ちませんでした。私も試してみましたがdo shell script "echo $USER"
、うまくいきましたが、ユーザーが投票したかどうかを確認する方法はまだわかっています。
質問のタイトルは「ユーザーが投票したかどうかを確認するにはどうすればよいですか?」とすべきだと思います。
本当にありがとう、
明細書
php - AJAX/jQuery/PHP を使用して投稿への追加の「いいね」を防止する
CakePHP を使用して構築されたサイトがあります。
このサイトは、認証されていないユーザーによる投稿に依存しています。
投稿ごとに「いいね」システムを導入したいと思います (カスタムの「いいね」システムである Facebook の「いいね」ではありません)。
私はこれが以前に出てきたことを知っていますが、そこに座っている誰かが何百回も「いいね」をクリックするのを防ぐ最も堅実な方法は何ですか. IPロック、localStorageなど、可能な限りの方法を喜んで使用します...
ありがとう
math - 時間と活動を考慮した評価システム
投票数だけでなく、時間と「活動」にも重きを置く評価システムを探しています
少し明確にするために:
ユーザーが写真のようなものを作成するサイトを考えてみましょう。他の人の写真(1〜5のスケール)に投票できる別のタイプのユーザーがいますが、1つの写真は1つの投票しか受け取りません。
生産的なユーザーが取得する評価は、彼/彼女の写真が受けた評価から導き出されますが、以下の影響を受けるはずです。
- 写真が作られたのはどれくらい前ですか
- ユーザーの生産性
3と4を取得し、それでも週に10枚の写真を作成しているユーザーは、5を取得しているが、週に1枚しか作成せず、数か月前に停止したユーザーよりも高い評価を得る必要があります。
私はベイズ推定を見てきましたが、それは時間や生産性とは無関係に総投票数のみを考慮しています。
私の数学のfuはかなり強いので、私が必要とするのは正しい方向に微調整することだけであり、おそらく私のニーズに合うように何かを変更することができます。