Witam,
Mam skrypt logowania do serwisów. Działa przykładowo na forach ale na innych stronach zwraca mi białą stronę :/ I nie są to strony które uzywają jakiś tokenów. Po prostu proste strony z logowaniem bądź formularzem. Nic się nie dzieje tylko mi zwraca pustą stronę.
Aha dodawałem do kodu linijki aby były wyświetlane błędy ale to nic nie dało. Nadal tylko pusta strona.
<?php
curl_login('http://mwarrior.org/index.php?step=wrota','email=MOJMAIL&pass=MOJEHASLO','','off');
curl_grab_page('http://mwarrior.org/hospital.php?action=heal','','');
function curl_login($url,$data,$proxy,$proxystatus){
$fp = fopen("cookie.txt", "w"); $login = curl_init();
curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($login, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($login, CURLOPT_TIMEOUT, 40);
curl_setopt($login, CURLOPT_RETURNTRANSFER, TRUE);
if ($proxystatus == 'on') {
curl_setopt($login, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($login, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($login, CURLOPT_PROXY, $proxy);
}
curl_setopt($login, CURLOPT_URL, $url);
curl_setopt($login, CURLOPT_HEADER, TRUE);
curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($login, CURLOPT_POST, TRUE);
curl_setopt($login, CURLOPT_POSTFIELDS, $data);
return curl_exec ($login); // execute the curl command
curl_close ($login);
}
function curl_grab_page($site,$proxy,$proxystatus){
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
if ($proxystatus == 'on') {
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
}
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_URL, $site);
return curl_exec ($ch); // execute the curl command
curl_close ($ch);
}
?>
Aha oczywiście plik cookie istnieje i się dobrze sprawuje. Posiada prawa do zapisu.