[ Alexxandar @ 17.03.2010. 22:06 ] @
| Potrebno mi je da skripta uradi sledeće: Uloguje se na sajt, ode na jednu stranicu i sa te stranice downloaduje zip fajl. Očigledno je da sam se zaglavio sam kod ovog prvog: Sumnjam na to da mi nešto nedostaje... ima li neko ideju gde grešim. Code: <?php $cookie_file_path = '/Users/Alexxandar/Documents/WWW/$temp/ppg.txt'; $url ="http://ppg.canadatrader.com/login.aspx"; $fp = fopen("$cookie_file_path","w"); fclose($fp); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 GTBDFff GTB7.0"); curl_setopt($ch, CURLOPT_TIMEOUT, 60); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path); $result = curl_exec ($ch); $doc = new DOMDocument(); @$doc->loadHTML($result); $viewstate = inputValueById($doc, '__VIEWSTATE'); $eventvalidation = inputValueById($doc, '__EVENTVALIDATION'); $postArray = array( 'ctl00$PageContentPlaceHolder$LoginBrown$frmUserName' => 'username', 'ctl00$PageContentPlaceHolder$LoginBrown$frmPassword' => 'password', '__EVENTTARGET' => '', '__EVENTARGUMENT' => '', 'ctl00$PageContentPlaceHolder$LoginBrown$btnLogin' => '', '__EVENTVALIDATION' => $eventvalidation, '__VIEWSTATE' => $viewstate ); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 GTBDFff GTB7.0"); curl_setopt($ch, CURLOPT_TIMEOUT, 60); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POSTFIELDS, $postArray); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path); $result = curl_exec ($ch); echo "<hr />" . $result . "<hr />"; curl_close ($ch); function inputValueById($DOMdoc, $id) { $xpath = new DOMXPath($DOMdoc); $element = $xpath->query("//*[@id='$id']")->item(0); foreach ($element->attributes as $attrName => $attrNode) { if($attrName == 'value') { return $attrNode->value; } } } ?> |