Autor | Zpráva | ||
---|---|---|---|
weny1 Profil * |
#1 · Zasláno: 24. 6. 2014, 21:08:58
Ahoj,
chtěl jsem se zeptat potřbuju zpracovávat soubor tohohle typu http://server.werco.cz/xml/zasoby.xml?login=****&pass=*** <-- MD5 heslo Snažím se takto $url="http://server.werco.cz/xml/zasoby.xml?login=***&pass=****"; $data = file_get_contents($url); echo"$data"; ale stále se mi ukazuje přihlašovací stránka, jako když bach to dal jen http://server.werco.cz/xml/zasoby.xml Přitom pokud použiju celou tu url a dám jí do řádku, tak to projde. Nevěděl by prosím někdo, proč to neprochází přes file_get_contents. děkuju |
||
Alphard Profil |
#2 · Zasláno: 24. 6. 2014, 21:52:55
To je podle nějakého dokumentovaného API? Ten formulář odesílá data metodou post. A když už by došlo ke správnému přihlášení, očekával bych nastavení session a přesměrování. To by takto jednoduchý file_get_contents nezvládl.
|
||
weny1 Profil * |
#3 · Zasláno: 25. 6. 2014, 06:42:11
Zkoušel jsem to i přes cURL, ale to mi zase posílá chybu 302. Je to zvláštní už jsem zpracovával hodně feedů, ale s tímhle jsem se setkal prvně. Oni mají udělané přihlášení pomocí svého formuláře nebo pomocí předání parametrů v URL, kde login je klasické číslo a heslo mají předávané v md5. Pokud to takhle použiju v normálním URL, tak to projde, ale vůbec se mi nedaří ten soubor stáhnout a zpracovat.
Kdyby někdo věděl budu moc rád |
||
juriad_ Profil * |
#4 · Zasláno: 25. 6. 2014, 06:46:43
302 neni chyba. Vybizi te k presmerovani na dalsi stranku. Jeji url ti posila v hlavicce Location.
|
||
weny1 Profil * |
#5 · Zasláno: 25. 6. 2014, 07:00:42
Ahoj, nejsem moc kovanej v cURL vytvořil jsem tohle a to mi vypíše to přesměrování, ale nevím jak ho tedy zpracovat, respektive, jak se dostat k tomu obsahu abych ho následně zpracoval.
Děkuju $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, '$moje url_s _parametry'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_MAXREDIRS, 10); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_TIMEOUT, 4); curl_setopt($ch, CURLOPT_POSTFIELDS, $request_xml); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: close')); $start = array_sum(explode(' ', microtime())); $result = curl_exec($ch); $stop = array_sum(explode(' ', microtime())); $totalTime = $stop - $start; if ( curl_errno($ch) ) { $result = 'ERROR -> ' . curl_errno($ch) . ': ' . curl_error($ch); } else { $returnCode = (int)curl_getinfo($ch, CURLINFO_HTTP_CODE); switch($returnCode){ case 200: break; default: $result = 'HTTP ERROR -> ' . $returnCode; break; } } curl_close($ch); |
||
Časová prodleva: 11 let
|
0