2013-05-22 224 views
3

我需要登錄(發帖)curlphp到一個網站,然後保存一個cookie與身份驗證,並使用它來訪問正常的鏈接從相同網站。用php在curl頁面登錄,然後訪問鏈接「登錄」

他們只有一半的免費版本的文字,但整體保費。所以如果可能的話,我想多次保存一個cookie。

我知道一些關於cURLPHP,但我還沒有拿出解決方案呢。

謝謝你們!

+1

好問題。我很想知道這個問題,但從來沒有找到答案。 – Jonathan

+0

**在php中使用curl登錄到頁面,然後訪問鏈接「登錄」**我認爲這個問題的頂部有點足以說明OP想要什麼@Jonathan – NetStarter

+1

@NetStarter是的。你是對的。我想了一下之後,刪除了我的評論。 :) – Jonathan

回答

6

您需要使用cookiejar參數在兩個請求之間共享文本文件。從http://coderscult.com/php-curl-cookies-example/


編輯修改

/* Create a temporary cookie file */ 
$ckfile = tempnam ("/tmp", "COOKIES"); 

/* Visit the first page */ 

$ch = curl_init ("http://somedomain.com/"); 
curl_setopt ($ch, CURLOPT_COOKIEJAR, $ckfile); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true); 
$output = curl_exec ($ch); 

/* Visit the second page */ 

$ch = curl_init ("http://somedomain.com/cookiepage.php"); 
curl_setopt ($ch, CURLOPT_COOKIEFILE, $ckfile); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true); 
$output = curl_exec ($ch); 

例子:我應該閱讀的的tempnam文檔......它創造了一個獨特的文件名,所以添加額外的用戶特定的前綴是沒有必要的,除非你想以後能夠識別文件。你也可以看看tmpfile(),它會在調用fclose時自動刪除(通常在php請求結束時)。

+1

有趣,乾淨,有效! –