Neden Gmail giriş iş PHP ve CURL kullanarak değil mi?

2 Cevap php

I'm implementing one project using PHP, in that I want to login into a page automatically . The code is below.

$ch = curl_init();
$postdata="Email=$username&Passwd=$password&continue=https://www.mail.google.com";
curl_setopt ($ch, CURLOPT_URL,"https://www.google.com");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $gacookie);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $gacookie);
curl_setopt ($ch, CURLOPT_REFERER, 'https://www.google.com');
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt ($ch, CURLOPT_POST, 1);
$AskApache_result = curl_exec ($ch);
curl_close($ch);
echo $AskApache_result;
unlink($gacookie);
?>

Ama bu işe yaramayacak. Herhangi bir fikir?

2 Cevap

Her şeyden önce: "bu iş olmaz" bize problem çözme yardımcı pek bilgi ve bağlam vermez.

Sorularınıza cevap almak için, örneğin, details tedarik çalışın lütfen:

  • Ne özel bir parçası çalışmıyor?
  • Eğer herhangi bir hata mesajı alıyorum?
  • Eğer kod hangi işletim sistemi üzerinde çalışır?

Ayrıca, daha descriptive question title kullanmak için yardımcı olur. "Bir CURL isteği yürütülürken hata X123 nasıl çözmek" çok daha yararlı olacaktır oysa "PHP ve CURL", bize çok ilgili bilgi vermez.

Neyse. Kodu baktığımızda, en az one hata var:

curl_setopt ($ch, CURLOPT_REFERER, 'https://www.google.com");

olmalıdır:

curl_setopt ($ch, CURLOPT_REFERER, "https://www.google.com");

Clarification: üçüncü parametre tek bir alıntı ile başlar ve bir çift tırnak ile sona erer.

curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);

Bu bir güvenlik riski teşkil ettiği için, seçenek, en çok (ve ücretsiz) paylaşılan web host üzerinde büyük olasılıkla sorun devre dışı edilir.