ホームページ バックエンド開発 PHPチュートリアル Cookie を使用してユーザーによるスパム返信を防ぐ方法

Cookie を使用してユーザーによるスパム返信を防ぐ方法

Jun 13, 2016 pm 01:40 PM
cookie curl http quot

ユーザーがスパム返信を送信するのを防ぐために Cookie を使用するにはどうすればよいですか?
今日は何もすることがなく、ifeng.com のリンクをクリックしました http://yue.ifeng.com/y/detail_2011_12/07/11160676_0.shtml

コメント ボックスの内容とは: 礼儀正しい方法でインターネットをサーフィンし、コメントするにはログインしてください!

ボタンをクリックして直接コメント内容を入力してください。

テキストボックスの内容は次のようになります。 コメントを投稿する前に、まずログインしてください。

もう一度ボタンをクリックして送信します。

開いたページに最新のコメントが表示されます。次に、html

HTML コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html&quot;; charset=&quot;utf-8&quot;&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;form method=&quot;post&quot; target='_blank' action=&quot;http://comment.ifeng.com/post.php&quot; id=&quot;commentForm&quot; name=&quot;commentForm&quot;&gt;
                                &lt;textarea onclick=&quot;changeBox();&quot; class=&quot;&quot; cols=&quot;50&quot; rows=&quot;10&quot; id=&quot;content&quot; name=&quot;content&quot;&gt;bbbbbbbbbbb&lt;/textarea&gt;
                                &lt;input type=&quot;hidden&quot; value=&quot;11160676&quot; name=&quot;docId&quot;&gt;
                                &lt;input type=&quot;hidden&quot; value=&quot;吴卓羲女友张馨予家中大尺度内衣自拍照火辣曝光&quot; name=&quot;docName&quot;&gt;
                                &lt;input type=&quot;hidden&quot; value=&quot;http://yue.ifeng.com/y/detail_2011_12/07/11160676_0.shtml&quot; name=&quot;docUrl&quot;&gt;
                                &lt;input type=&quot;hidden&quot; value=&quot;21202&quot; name=&quot;chId&quot;&gt;
&lt;input type=&quot;submit&quot; style=&quot;margin-left:20px; display:inline&quot; value=&quot;xxxxxxxxxxxx&quot; &gt;
&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;

ログイン後にコピー

の一部をコピーして送信しました。
次に、curl post を使用してフォームの効果をシミュレートしようと考えましたが、何かが欠けていたのかもしれません。
PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
header("content-type:text/html;charset:utf-8;");
/*
chId    21202
content    mmmmmmmmm
docId    11160676
docName    吴卓羲女友张馨予家中大尺度内衣自拍照火辣曝光
docUrl    http://yue.ifeng.com/y/detail_2011_12/07/11160676_0.shtml
*/
  $url = "http://comment.ifeng.com/post.php";
   //$url = "http://localhost/php/index.php";
  $data = array(
    'content'=&gt;'xxxxxxxxxxoooooooooooo',
    'docId'=&gt;11160676,
    'docName'=&gt;'吴卓羲女友张馨予家中大尺度内衣自拍照火辣曝光',
    'docUrl'=&gt;'http://yue.ifeng.com/y/detail_2011_12/07/11160676_0.shtml',
    'chId'=&gt;21202
);
 
$ret = http_post($url,$data);
var_dump($ret);

function http_post($url, $data)
 {
     $ch = curl_init();        
     curl_setopt($ch, CURLOPT_HEADER,1);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_POST, 1);
     $data = http_build_query($data);
     curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
     
     curl_setopt($ch, CURLOPT_REFERER, "http://yue.ifeng.com/y/detail_2011_12/07/11160676_0.shtml");
     $cookie = "userid=1323532473389_2814";
     curl_setopt($ch, CURLOPT_COOKIE, $cookie);
     
     $rs = curl_exec($ch);
     curl_close($ch);
     return $rs;
 }

ログイン後にコピー


私が遭遇した問題は次のとおりです:
1. コメント内の人のアバターは、他のものとは異なり、灰色です。ブラウザを変更してリンクを開いたところ、スプラッシュの内容が表示されませんでした。次に、firebug の firecookie プラグインを使用して Cookie を確認したところ、スプラッシュがなければユーザー ID と cmtid があることがわかりました。その他の cmtid

http://comment.ifeng.com/view.php?doc_url=http%3A%2F%2Fyue.ifeng.com%2Fy%2Fdetail_2011_12%2F07%2F11160676_0.shtml&doc_name=%E5%90 %B4%E5%8D%93%E7%BE%B2%E5 %A5%B3%E5%8F%8B%E5%BC%A0%E9%A6%A8%E4%BA%88%E5%AE%B6 %E4%B8%AD%E5%A4%A7%E5%B0 %BA%E5%BA%A6%E5%86%85%E8%A1%A3%E8%87%AA%E6%8B%8D%E7 %85%A7%E7%81%AB%E8%BE%A3 %E6%9B%9D%E5%85%89&ishot=no

Cookie をクリアしてページを更新すると、Cookie が userid = と表示されます。 1323533123324_5513
上記の html で送信すると、cmtids = 45583 が表示されます。cmtids = 45583_45612
Cookie を消去すると、削除されます

2. このようなコメントを一時的に保存するのはなぜですか?コメントするにはログインが必要なので。 。 。 js が最新のコメント ページに偽のコメント ページを表示するほど十分に判断できなかったのでしょうか?

私には才能も知識もほとんどないので、少しいじってみましたが、皆さんに分析を手伝っていただければ幸いです。 。 。ガガ

-----解決策---------
先ほど確認してみたところ、直接送信されていました。この Web サイトは非常に緩いものです...

curl の直接送信が受け入れられない場合は、サーバー側に追加の要件がまだある可能性が非常に高いです。 (たとえば、特定の Cookie など)、Web ページを送信するときに HTTP データ フローを確認し、curl を使用して完全にシミュレートすることをお勧めします。そうすれば、それを処理できるはずです。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Linux での CURL バージョンの更新に関するチュートリアル! Linux での CURL バージョンの更新に関するチュートリアル! Mar 07, 2024 am 08:30 AM

Linux での CURL バージョンの更新に関するチュートリアル!

Cookie はどこに保存されますか? Cookie はどこに保存されますか? Dec 20, 2023 pm 03:07 PM

Cookie はどこに保存されますか?

コンピューター上の Cookie はどこにありますか? コンピューター上の Cookie はどこにありますか? Dec 22, 2023 pm 03:46 PM

コンピューター上の Cookie はどこにありますか?

Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する Feb 18, 2024 pm 08:41 PM

Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する

モバイル Cookie はどこにありますか? モバイル Cookie はどこにありますか? Dec 22, 2023 pm 03:40 PM

モバイル Cookie はどこにありますか?

ブラウザの Cookie が保存される場所の詳細な説明 ブラウザの Cookie が保存される場所の詳細な説明 Jan 19, 2024 am 09:15 AM

ブラウザの Cookie が保存される場所の詳細な説明

PHP Curl で Web ページの 301 リダイレクトを処理するにはどうすればよいですか? PHP Curl で Web ページの 301 リダイレクトを処理するにはどうすればよいですか? Mar 08, 2024 am 11:36 AM

PHP Curl で Web ページの 301 リダイレクトを処理するにはどうすればよいですか?

C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか? C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか? May 31, 2024 am 11:06 AM

C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか?

See all articles