2012-06-23 13 views
5

emniyete Güvenli Giriş ile bir site içeriği ancak sitenin giriş, parola, burada şifre ben kod üç seçenek kullanıcı adı yapamadığı ettiPençe ben isime sahip bir sitenin içeriğini kazımak için çalışıyorum

<?php 

// HTTP authentication 

$url = "http://aftabcurrency.com/login_script.php"; 

$ch = curl_init();  

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

curl_setopt($ch, CURLOPT_URL, $url); 
$cookie = 'cookies.txt'; 
$timeout = 30; 
curl_setopt($curl, CURLOPT_TIMEOUT,   10); 
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout); 
curl_setopt($curl, CURLOPT_COOKIEJAR,  $cookie); 
curl_setopt($curl, CURLOPT_COOKIEFILE,  $cookie); 

curl_setopt ($ch, CURLOPT_POST, 1); 
curl_setopt ($ch,CURLOPT_POSTFIELDS,"user_name=user&user_password=pass&passcode=code");    

$result = curl_exec($ch); 

curl_close($ch); 

echo $result; 

?> 
+0

i cevap kabul değişikliklerle bu kodu denedim gerekir, ancak bu kod benim için çalışmıyor, benim amazon satıcı hesabının ayrıntılarını kullanıyorum ama hiçbir şey olmuyor, PHP'ye yeni olduğum için bana bir şey yollayabilir misin? –

cevap

7

kullanarak çerezleri kabul etmek de bir POST http://aftabcurrency.com/login_script.php için bukle ihtiyaçlarını yapmak gerekir.
Kimlik doğrulamasından sonra komut dosyası sizi yönlendirecek, bu nedenle CURLOPT_FOLLOWACTION'u eklemeniz gerekiyor. Burada

, metin için düzenlenmiş versiyonu, ben http://aftabcurrency.com/ üzerinde test edemez çalışır umut:

$url = "http://aftabcurrency.com/login_script.php"; 

$ch = curl_init();  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

curl_setopt($ch, CURLOPT_URL, $url); 
$cookie = 'cookies.txt'; 
$timeout = 30; 

curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1); 
curl_setopt($ch, CURLOPT_TIMEOUT,   10); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
curl_setopt($ch, CURLOPT_COOKIEJAR,  $cookie); 
curl_setopt($ch, CURLOPT_COOKIEFILE,  $cookie); 

curl_setopt ($ch, CURLOPT_POST, 1); 
curl_setopt ($ch,CURLOPT_POSTFIELDS,"user_name=user&user_password=pass&passcode=code");  

$result = curl_exec($ch); 

/* //OPTIONAL - Redirect to another page after login 
$url = "http://aftabcurrency.com/some_other_page"; 
curl_setopt ($ch, CURLOPT_POST, 0); 
curl_setopt($ch, CURLOPT_URL, $url); 
$result = curl_exec($ch); 
*/ //end OPTIONAL 

curl_close($ch); 
echo $result; 
+0

Kod Düzenleme Bu, çerezleri yayınlamanın doğru yolu mu? – user1447187

+0

Burada kodunuzu düzenledim, çerez bölümünüzde yanlış bir değişken ($ curl ve $ ch değil) ayarladınız - ve ayrıca CURLOPT_FOLLOWACTION ekledim, böylece komut dosyası oturum açtıktan sonra sizi yönlendirebilir. – MilMike

+0

Teşekkürler çalışıyor Ne http://aftabcurrency.com/ örneğin sayfasından belirli bir "metin" kazımak istiyorsa Sadece sadece hurda çekmek istiyorum "Bizim Hizmetleri Önemlidir!" (Bu metin her gün değişir) herhangi bir fikir? – user1447187

0

Sen o sayfaya kullanıcı adınızı/şifrenizi/şifre POST gerekir. Şu an yapmaya çalıştığınız şey http kimlik doğrulamasıdır. Bunun yerine bu

curl_setopt($ch, CURLOPT_USERPWD, "demo:demopass:demopasscode"); 

ait bu

curl_setopt ($ch, CURLOPT_POST, 1); 
curl_setopt ($ch, CURLOPT_POSTFIELDS, "user_name=xxxxx&user_password=xxxxxx&passcode=xxxxx"); 
+0

Bitti Ben Giriş yaptıktan sonra aynı sitede başka bir sayfaya yönlendirme nasıl göstermek için bazı İSTEĞE kod eklemiş o sayesinde – user1447187

İlgili konular