2011-07-24 12 views
0
$post_data = array(
     'url' => $all[2], 
     'op' => 'sv', 
     'sid' => 1 
    ); 
// Send a request to example.com 
$result = post_request('http://www.yahoo.com', $post_data); 

function PostRequest($url) { 
    $opts = array('http' => 
     array(
      'method' => 'GET', 
      'header' => "Content-type: application/x-www-form-urlencoded\r\n"."Accept-language: en\r\n" . 
       "Cookie: member_id=8593099\r\n" . 
       "Cookie: pass_hash=fad917fe75e1059f85fc6d9bb6f7a19f\r\n". 
       "Cookie: session_id=279fe56fd87e5371dc7e1c9f66c27522" 
     ) 
    ); 
    $context = stream_context_create($opts); 
    $result = file_get_contents($url, false, $context); 
    return $result; 
} 

リクエストを送信できますが、ログインする必要があります。 ログインしても、ログインしていないと分類されます。php httpリクエスト

私はlocalhostを使用してリクエストを送信しています。それは異なるドメインのためですか? ローカルホスト用のログインCookieを既にコピーしましたが、まだ動作していません。 アイデア 私がやろうとしたのは、httpリクエストをPHPで送信することです。 私のリクエストは送信されましたが、宛先がクッキーを検出できず、ログインしていないと主張しています。

+0

私はあなたの質問を理解することが難しいと思っています。あなたはexample.comに投稿データを送信しようとしていますが、example.comはあなたがログインする必要があるため動作しません。 – Mike

+0

'post_request' - その機能は何ですか?あなたがそれについての詳細を提供しない限り(ライブラリ/フレームワーク/ CMSを使用していますか?)、あなたの質問に答えることはできません。さらに、yahooにログインのためのクッキーが必要であると見ているかもしれません。 – hakre

答えて

0

私が投稿したコードはあまり明確ではないので、あなたが達成しようとしていることはあまりよく分かりません。 post_request()はPHPのネイティブ関数ではありませんので、さらにお手伝いできるようサンプルを提供する必要があります。

しかし、session_start();をPHPファイルの先頭に置いたことを確認したことをお勧めします。セッション/クッキーにアクセスできることを確認してください。

+0

私はあまりにもこの記事を投稿するために急いで..私はさらに情報を追加します – Leon