0

私はFacemashのようなスクリプトを使用しています。しかし、問題は、実際にカーソルをすべての画像の画像に向けたときに人を評価するときに、次のようなURLが存在することです。

rate.php?winner=XXX&loser=XXXX1

したがって、これをアドレスバーに直接入力すると、トリックが機能します。したがって、ユーザーがスコアをハックする可能性があります。GETメソッドをPOSTメソッドに変更できることはわかっています。そして私はこれを探しました、そして何も本当に私を助けませんでした。ファイル(rate.phpおよびindex.php)へのリンクもこの質問のコメントに含まれています。

4

3 に答える 3

2

私は独自の Facemash のようなエンジンを作成しています。

idPHP に2 つのチャレンジャーを保存します$_SESSION。新しいペアを表示する前に、が設定されているかどうかを確認し、$_SESSION設定されている場合は、データベースから新しいペアを取得する代わりに表示します。これにより、写真を取得するまでページを更新することで不正行為を防止できます。私が facemash を作っているコミュニティが比較的小さいので、そうしました。

vote.php?v=leftしたがって、リンクはまたはのようになりますright。で、 aからsvote.phpを取得し、それらを設定解除します。いつかスクリプトを公開するのを楽しみにしています。id$_SESSION['right']$_SESSION['left']

于 2012-12-14T05:55:33.200 に答える
0

はい、GET から POST に変更すると、パラメーターは送信時に URL に表示されません。

http://www.w3schools.com/php/php_post.asp

于 2012-06-07T13:25:31.553 に答える
0

GET/POST に依存して比較を決定する$_SESSION代わりに、代わりにデータを保存し、ユーザーに「image1」または「image2」のみを選択させ、選択が行われた後に無効にして新しい比較を作成します。

サンプル サイト - フォームでは 1 つまたは 2 つしか選択できません

于 2012-06-07T15:45:36.823 に答える