Nasıl PHP kimlik doğrulama arkasında bir web sitesinin sayfaları kitle getirilemedi

2 Cevap php

Evet, evet, ben kullanıcı ve şifre biliyorum.

Ben bir web sitesi oturum ve normal bir web sitesi gibi bazı resim / içeriğini almak almak için php bazı hile gerekir.

Ben doğrulanmış değil çünkü Açıkçası file_get_contents o kıvrılma ile çalışmıyor.

I nasıl yapabilirim?

Kimlik doğrulama POST ile normal HTTP auth olduğunu.

Edit: çalışır yardım için ok teşekkürler!

Ben ileride burada çalışan kod sonrası

//login and set cookie
$curl = curl_init();
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIEJAR, "cookiefile"); # SAME cookiefile
curl_setopt($curl, CURLOPT_URL, "url in which there is the login form"); 
curl_setopt($curl, CURLOPT_POSTFIELDS, "user=test&password=test&someparam=somevalue"); //put here the post/get values
$output = curl_exec($curl);

echo $output;

//finally fetch my content
curl_setopt($curl, CURLOPT_URL, $url_to_fetch); 
$output = curl_exec($curl);
echo $output;

curl_close ($curl);

2 Cevap

Sen kıvrılma ile kimlik doğrulaması yapabilirsiniz. Curl giriş POST değişkenler gönderme ve aynı zamanda temel HTTP kimlik doğrulaması sağlar.

Use the browser to authenticate yourself, export the cookies and use them via curl. Until the session lasts you should impersonate your user.

Acelem yaşıyorum ve şimdi size kod sağlayamaz, ama ben bu tarifi size yardımcı olabilir düşünüyorum

Eğer çerezleri kayıtlı olduğu dosyayı belirtmek için CURLOPT_COOKIEFILE seçeneğini kullanabilirsiniz.

De belirtildiği üzere php manual,

The name of the file containing the cookie data. 
The cookie file can be in Netscape format, or just 
plain HTTP-style headers dumped into a file.