2011-07-31 10 views
0

私は、このシナリオが発生するのを可能にする最も簡単で最も賢明な方法を探しています。PHPでの継続的なMySQLデータベースクエリ?

ユーザーが読み込むページ - 特定の値(ユーザーのIPアドレス)が設定されていることがわかるまで、ページが読み込まれる間、データベースが継続的に照会されます - >値が設定されると、ページがリダイレクトされます。

単純にページ上のユーザーIPを取得してデータベースに挿入してリダイレクトすることができない理由は、IPアドレスが検証方法に使用されているためです。 (私は制御権がない)別のウェブサイトでは、ユーザーがそのウェブサイト上で一連のアクションを完了すると、それが返されて自分のデータベースに追加されます。

誰かが私が使用できるPHP関数の書き込み方向を指すことができれば、私は非常に感謝します:)!

+0

だから、待って、それはユーザーのために見えるものは何ですか?ユーザーはいくつかのアクションを完了するために別のページに行きますが、あなたの*サイトは彼をリダイレクトする必要があります...?その設定について詳しく説明できますか? – deceze

+0

申し訳ありません、完全な説明:ユーザーはホームページから入力します - >ユーザーは国別のページにリダイレクトされます - >ユーザーがダウンロードリンクをクリックする - > Modular JSボックスがポップアップ表示され、提供リンクのリストを持っています - >各提供リンクは任意の値を保持できる "subid"のパラメータをとります。この場合、ユーザのIPアドレスは値として使用されます - >新しいページが完成するために - > – Fireworksable

+0

ユーザIPアドレス( "subid"の値)が完成すると、別のPHPスクリプトにポストバックされ、ユーザのIPアドレスがホワイトリストデータベース→モジュールボックスに挿入されますありがとうございましたメッセージをお送りいただきありがとうございます。 – Fireworksable

答えて

2

おそらくAJAX経由で元のページを照会し続けるのが最も良い方法です。サーバー上のスクリプトにAJAXリクエストを20秒ごとに送信して、データベースが探しているデータで更新されているかどうかを確認します。これをよりリアルタイムにするために、長いポーリング/コメットは、あなたが調べたいかもしれないテクニックです。

非常にローテクなソリューションは、各負荷でデータベースをチェックしながら、それ自体をリフレッシュし続ける単純なページになります。

IPを一意の識別子として使用することはあまり細かいことではありません。 1人だけがオファーを記入した場合、広範囲の人々にブランケットアクセスが与えられる可能性があります。それが問題でない限り、長いランダムな文字列を作成してセッションに保存し、subidとして送信し、それが戻ってくるのを待ってください。そうすればユーザを一意に識別できます。特定のアクションを特定することもできます。

あなたが行くことを望みます。

+0

甘い人、ありがとう:)。 – Fireworksable

関連する問題