表題の通り、ホームページ上で投票できるシステム(PHPかCGI)を作りたいと思っています。
PHPとCGIの知識は、すでにあるものを少しだけいじれる程度なのですが
配布されているフリーのものを探して、ちょうどいいものがなく、
この機会に是非チャレンジしたいので、ご助言をお願いします。
内容的には、写真がずらっと並んだギャラリーページから、
ユーザーが一番気に入った写真を1つだけ選んで投票できるというものです。
下記のような機能をつけたいです。
■第一回人気投票、第二回人気投票…と、開催ごとに1回しか投票できない。
(第一回で投票した人でも、第二回が開催されたときは投票できる)
■1回投票したら、他の写真には投票できない
■ユーザーはどの写真に何票入っているかみれない
■管理者はどの写真に何票入っているか見れる
■データーベースが必要なら用意できます
なにから手をつけていいのかわからない状態なのですが、
ご助言お願い致します。
No.2ベストアンサー
- 回答日時:
厳密には不可能です。
案1:メールアドレスなどでユーザ登録してもらい、1ユーザ1回の投票にする。
⇒問題点1:メールアドレスを複数持っている人が複数回登録できる
問題点2:登録が面倒で投票してくれる人が減る
案2:cookieを使う。
⇒問題点1:そもそもcookieを有効にしていない人をどうするのか?・・・投票不可にするしか無い
問題点2:cookieをクリアすると何度でも投票できる
案3:TwitterとかmixiとかのIDで認証して、1ユーザ1回の投票にする。メールアドレスと違いIDを複数持っている人は少ないので
⇒問題点:そういうサービスを利用してない人は投票できない
まあ、あまり厳密さを求めないで(意図的に何度も投票する人が居てもしょうが無いとあきらめ)、cookieでしょうか。
Cookieを扱うPHPでの具体的な記述は「PHP Cookie」で検索すればいくらでも情報があります。Perlなら「Perl Cookie」で。
処理の流れはこんな感じで:
0. Cookieの名前は投票回ごとに違う名前を決めます。例えば第一回だとponpoko001とか。
1. 投票を受け付けるときに、ponpoko001というcookieがあれば投票済みとみなします。
2. そのcookieが無い場合、Cookieを無効にしてないかチェックのため、checkというcookieを発行してみます。
3. 次のページに遷移して、checkというcookieが帰ってこなければブラウザ設定でCookieを無効にしているということなので「Cookieを有効にしてください」というメッセージを出してトップページなどに帰ります。
4. 投票を受け付けます。
5. 同時に、長い有効期限で、ponpoko001という名前のCookieを発行します。
ご回答ありがとうございます。
なるほど、ご提案のとおり、Cookieがいちばんよさそうです。
おかげさまで、だいたいの設計が理解できたので
少しずつ勉強して作りたいと思います。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 学校 至急回答お願いします。 LINEグループの投票をするべきか迷っています。 専門学生です。 3週間前に 2 2022/07/19 20:26
- その他(ニュース・社会制度・災害) 選挙違反できますか? 5 2023/03/17 10:51
- 政治 選挙はランダム投票でするべきだろう。 ランダム投票とは、国民から無作為に投票者を抽出する投票制度。 4 2022/06/24 17:09
- Java Java 配列<選挙> 4 2023/07/31 15:07
- 政治 維新が最も民主主義的な政党ですね? 4 2022/07/29 13:44
- 政治 何故、立民は維新のように、党首選で一票の格差を無くさないのですか? 3 2022/07/31 09:19
- 政治学 ウクライナの親露地域の住民投票について 7 2022/09/24 16:44
- 政治 選挙の投票時間を短縮するべきでは? 4 2022/07/10 16:47
- 政治 なぜ選挙の投票率は若者が低く、高齢者は高いのか? 13 2023/03/29 20:26
- 政治 統一教会問題での疑問。「選挙での電話作戦」って何をするの? 5 2022/09/05 20:58
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
入力フォーム(電話番号)
-
フォームを再送信しますか?
-
ラズパイでのCGIで、pythonソー...
-
ホームページでCGIのフォームを...
-
htmlファイルにPHPとCGIを埋め込む
-
皆さんはGUCCIはハイブランドだ...
-
apacheでPerl CGIが作動せず、5...
-
Perl 別ドメインのファイル存在...
-
エクセルで集計したい。
-
cgi-binのエラー?
-
Trees掲示板CGI(CGI-Resque氏...
-
めちゃきれい
-
number 改行が追加できない
-
生成AI画像について
-
3DCG
-
ホームページにメールフォーム...
-
cgi アクセス制限 エラー
-
CGIの記述について教えてくださ...
-
CGIの設置が分かりません・・・
-
ホームページにCGIを設置したの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Basic認証でパスワードを保存さ...
-
特定のコンピュータのみにアク...
-
1人1回投票できる投票システム...
-
パスワードで開くページを作り...
-
VBSで既に開いているIEにパスワ...
-
URLの履歴(オートコンプリート...
-
パスワードを入力しないと見ら...
-
パソコン用語「ツリー」って、...
-
PowerShellでのエラー出力の読...
-
設置出来ない…
-
VBスクリプト---アプリの終了に...
-
風俗嬢の心のセンサーは壊れて...
-
HPで「あなたは何人目です」...
-
2ショットチャットルームのお勧...
-
ページにJavaScriptを埋め込む...
-
イラストレーター、縦中横のシ...
-
jQueryを使ってドラムロールを...
-
レジストリの設定をすぐに反映...
-
掲示板に画鋲、ホッチキス以外...
-
(フリーの)ツリー掲示版CGI、...
おすすめ情報