Witam, temat kiedyś już poruszałem... nadal nie znalazłem rozwiązania, potrzebuję zrobić logowanie do dziennika elektronicznego za pomocą curl'a
link dziennika:
https://uonet.vulcan.net.pl/001606/LoginPag...06%2fstart.aspxjeśli komuś ułatwi sprawę to mogę podać moje dane do dziennika.
mój kod:
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_UNRESTRICTED_AUTH, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_URL, "https://uonet.vulcan.net.pl/001606/LoginPage.aspx?ReturnUrl=%2f001606%2fstart.aspx");
curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "my_cookies.txt");
$content = curl_exec($ch);
curl_close($ch);
$id = explode('<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="', $content);
$id1 = explode('<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="', $content);
function createPostString($aPostFields)
{
foreach ($aPostFields as $key => $value) {
}
}
'ctl00$TheContentPlaceHolder$txtLogin' => 'x',
'ctl00$TheContentPlaceHolder$btLogin' => 'Logowanie',
'ctl00$TheContentPlaceHolder$txtPassword' => 'x',
'__EVENTTARGET' => '',
'__EVENTARGUMENT' => '',
'__VIEWSTATE' => $ide[1],
'__EVENTVALIDATION' => $ide1[1]
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_UNRESTRICTED_AUTH, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_URL, "https://uonet.vulcan.net.pl/001606/LoginPage.aspx?ReturnUrl=%2f001606%2fstart.aspx");
curl_setopt($ch, CURLOPT_POSTFIELDS, createPostString($input));
curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "my_cookies.txt");
curl_exec($ch);
curl_close($ch);