私はフォームを介して私の訪問者のIPアドレスを取得するために私の連絡フォームに以下の行のコードを持っています。代わりにデフォルト値が返されます。訪問者のIPを返すにはどうすればよいですか?私の潜在的な顧客は、私に連絡する形をしていますが、スパマーもそうしています。フォームメーラからIPアドレスを取得する方法
答えて
正確にこれを行うと思われますか?
IPアドレスが必要な場合は、フォームが生成するHTTP要求のクライアントアドレスを確認します。フォームがダイナミックにクライアント上にメールを作成している場合(つまり、HTTPリクエストでフォームデータを返信しない)、値を入力する場合は、HTMLを生成するコードから値を設定する必要がありますIPアドレスについては知らない) PHPで....
<input type=hidden name="env_report" value="<?php print $_SERVER['REMOTE_ADDR']; ?>">
のみ、それはあなたにもいくつかの改ざん検出....
<input type=hidden name="anti_tamper" value="<?php
print md5('s3cr3t' . $_SERVER['REMOTE_ADDR']);
?>">
が含まれていない限り、電子メールの内容を修正するために誰かのために些細だ...、領収書の上で検証します。
しかし、まだ...それは何を達成するつもりですか?フォームが送られたのと同じクライアントからリクエストが送られたとしますか?私はOPがスパマーから来ていると見られるIPを除外したいと思っていますが、間違っていると思います。おそらく、スパム送信者はフォーム要求とフォーム送信の間でIPを反転させるでしょう。これは実際に何かを行います。 –
それは完全に機能しますが、改ざんされたかどうかはどのようにわかりますか? –
if(md5( 's3cr3t'。$ ip_address_in_email)!= $ anti_tamper){// IPアドレスが改ざんされました} – symcbean
HTMLから直接取得することはできません。 PHPのようなサーバーサイド言語を使用して取得する最善の方法。 PHPでは、$ _SERVER ['REMOTE_ADDR']を使用して、クライアントのIPアドレスを取得できます。ここに私が少し前に書いたブログ投稿がGetting real client IP address in PHPです。
JavaScriptを使用してIPアドレスを取得する信頼できる方法はありませんが、詳細についてはthis questionをご覧ください。
フォームがサーバーに送信されたときにIPアドレスを確認し、送信されたものがスパマーか通常のユーザーかどうかを確認します。
- 1. IPアドレスの取得方法
- 2. ソケットからIPアドレスを取得する方法Windowsで
- 3. C#のFTPリクエストからIPアドレスを取得する方法
- 4. JavaのHTTPヘッダーからIPアドレスを取得する方法
- 5. C#、TcpClientからIPアドレスを取得する方法は?
- 6. PythonのpingからIPアドレスを取得する方法
- 7. クライアントIPアドレスをブラウザから取得する方法(タイプスクリプト)
- 8. AndroidでプログラムでMacアドレスからIPアドレスを取得する方法は?
- 9. 取得IPアドレス
- 10. 取得IPアドレス
- 11. ホスト名/ IPアドレスのCNAME取得方法
- 12. サーバ側から既知のMACアドレスからIPアドレスを取得
- 13. IPアドレスを取得
- 14. Parallels VMがホストから使用するIPアドレスを取得する方法は?
- 15. IPアドレスの取得
- 16. RustからマシンのIPアドレスのリストを取得する方法は?
- 17. 構造体addrinfoから自分のIPアドレスを取得する方法
- 18. RustのSockAddrからIPアドレスのバイト表現を取得する方法は?
- 19. 複数のIPアドレスからホスト名を取得する方法は? Java
- 20. ノードからAxios呼び出しでリモートIPアドレスを取得する方法
- 21. 入力IPからMACアドレスを取得する簡単な方法は?
- 22. jQueryを使用してクライアントIPアドレスを取得する方法
- 23. WebサービスでIPアドレスを取得する方法は?
- 24. AzureでクライアントのIPアドレスを取得する方法C#?
- 25. node.jsで外部IPアドレスを取得する方法は?
- 26. WLANのIPアドレスを取得する方法は?
- 27. socket.ioでクライアントのIPアドレスを取得する方法
- 28. javascriptでパブリックIPアドレスを取得する方法
- 29. R配管でクライアントのIPアドレスを取得する方法
- 30. AWSクラウドフォーメーション - ec2インスタンスのパブリックIPアドレスを取得する方法
どのサーバー環境を使用していますか?このフォームをクライアントに送信する場合は、要求しているIPを判別することもできます。 – Tigraine
私はあなたがリクエストに応じてサーバーからIPを取得する必要があると思う。 「クライアント」がある場合は、フォームにアクセスするためにログインするようにしてください。「スパム発信者」はできないと思います。または、reCaptchaなどを使用してください。正しく行われていれば、何よりも優れています。 –
PHP $ _SERVER変数 'REMOTE_ADDR'と 'REMOTE_HOST'を参照しようとしているようです。 http://php.net/manual/en/reserved.variables.server.php – msanford