м. странно вроде я всё правельно передаю Code: <?php $hostname = "gz.sko.kz"; $path = "/login.aspx?ReturnUrl=%2fDefault.aspx"; $line = ""; $fp = fsockopen($hostname, 80, $errno, $errstr, 30); if (!$fp) echo "$errstr ($errno)<br />\n"; else { $data = "__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwUKMTUzNTg1MDU5MA9kFgICAw9kFgICBQ88KwAKAQAPFgIeDUNyZWF0ZVVzZXJVcmwFJVJlZ2lzdGVyLmFzcHg%2FUmV0dXJuVXJsPS9EZWZhdWx0LmFzcHhkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WBAUSbG9naW5fc3RhdHVzJGN0bDAxBRJsb2dpbl9zdGF0dXMkY3RsMDMFFGxvZ2luYm94MyRSZW1lbWJlck1lBRpsb2dpbmJveDMkTG9naW5JbWFnZUJ1dHRvbo52%2BP4gTBuf4CaCEX58bGgpHWO2&loginbox3%24UserName=zz&loginbox3%24Password=dd&loginbox3%24LoginButton=%C2%A0%D0%92%D1%85%D0%BE%D0%B4%C2%A0&__EVENTVALIDATION=%2FwEWBgLext%2F2CwKTs87BDAK%2Fu7fIDQKY2Z7xCAKNm%2FKSDgLOgJCABthp5RG9Wy0Z%2F08BwLNmJ%2FxopnyM\r\n\r\n"; $headers = "POST $path HTTP/1.1\r\n"; $headers .= "Host: $hostname\r\n"; $headers .= "Content-type: application/x-www-form-urlencoded\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n\r\n"; fwrite($fp, $headers.$data); while (!feof($fp)) { $line .= fgets($fp, 1024); } fclose($fp); } echo $line; ?> а денвер выдаёт Maximum execution time of 30 seconds exceeded а у тебя какая ошибка? возможно на этом сайте идёт проверка referrer'а ?
у меня такая же ожибка exec time хз чо делать , но мне срочно надо как то пропарсить информацию под злогиненым юзером, мож есть какие-то другие идеи по поводу аутентификации? Цель пропарсить инфу из под логина, так как её иначе не видно
держи через get получилось Code: <?php $fp = fsockopen("www.gz.sko.kz", 80, $errno, $errstr, 30); if (!$fp) { echo "$errstr ($errno)<br />\n"; } else { $out = "GET http://gz.sko.kz/login.aspx?ReturnUrl=%2fDefault.aspx?__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwUKMTUzNTg1MDU5MA9kFgICAw9kFgICBQ88KwAKAQAPFgIeDUNyZWF0ZVVzZXJVcmwFJVJlZ2lzdGVyLmFzcHg%2FUmV0dXJuVXJsPS9EZWZhdWx0LmFzcHhkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WBAUSbG9naW5fc3RhdHVzJGN0bDAxBRJsb2dpbl9zdGF0dXMkY3RsMDMFFGxvZ2luYm94MyRSZW1lbWJlck1lBRpsb2dpbmJveDMkTG9naW5JbWFnZUJ1dHRvbo52%2BP4gTBuf4CaCEX58bGgpHWO2&loginbox3%24UserName=zz&loginbox3%24Password=dd&loginbox3%24LoginButton=%C2%A0%D0%92%D1%85%D0%BE%D0%B4%C2%A0&__EVENTVALIDATION=%2FwEWBgLext%2F2CwKTs87BDAK%2Fu7fIDQKY2Z7xCAKNm%2FKSDgLOgJCABthp5RG9Wy0Z%2F08BwLNmJ%2FxopnyM HTTP/1.1\r\n"; $out .= "Host: www.gz.sko.kz\r\n"; $out .= "Connection: Close\r\n\r\n"; fwrite($fp, $out); while (!feof($fp)) { echo fgets($fp, 128); } fclose($fp); } ?>
++++++++++++ а чего то не хотит, говорит что HTTP/1.1 400 Bad Request ( Недопустимые данные. ) Connection: close Pragma: no-cache Cache-Control: no-cache Content-Type: text/html Content-Length: 1964
у меня в денвере работает. возможно форум отфармотировал исходник. вот залил его на http://rapidshare.com/files/108306993/get.txt.html
ну а если так ? PHP: if (!ereg("^[[:alnum:]_\.-]+$")) ; то тут какрас не должена начинатся на цифру,букву, нижнее подчёркивание,точкку или дефис
2 ZET36 спасибо за исходники, сервак даже чего-то вернул))) Ты молодец +++ HTTP/1.1 302 Found Connection: close Content-Length: 4416 Date: Fri, 18 Apr 2008 02:44:41 GMT Location: /Default.aspx?__EVENTTARGET= Content-Type: text/html; charset=utf-8 Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET X-AspNet-Version: 2.0.50727 Set-Cookie: ASP.NET_SessionId=xy1t4hi0aj30ilq41oduip45; path=/; HttpOnly Set-Cookie: .ASPXAUTH=EFB41E6FD57F57EB0270006100720073000000391ADB26FEA0C801003954F565B0C2CA0100002F0000003CC4E561048562DAC97DAA120EE1DF50C2C22B75; path=/; HttpOnly Cache-Control: private
на самом деле это все очень странно, этот скрипт в админке, а админки как известно для тех кто не разбирается в кодах, для легкой правки контента сайта, так очень странно что там стоит условие что закачиваемый файл должен быть типа 123asd без расширения, странно еще , йа эту проверку закоментил, а файл все равно не заливается, но проверок файл нейма там в коде больше нет...
Ребят! Срочно нужна помощь! Я случайно восстановил старую базу своего форума! И все новые темы удалились, а вчерашнего нового бекапа нет! Можно ли как нибудь вернуть все назад!? форум на phpbb3
А если нету!? Может там где нибудь автоматом хранится на всякий случай!? Я на фтп полазил - ничего не нашел... Просто очень много полезной информации потерялось...
ПРивет, Всем у меня опять головатыкство с парсилкой.... Надеюсь ZED36 мне поможет))) Залогиниться то получилось а, что-то дальше информацию с др страниц получить не могу, те попасть не могу на эти страницы например надо залогинившись получить контент страницы http://gz.sko.kz/Default.aspx?org_id=10. Какие заголовки надо передать чтоб получить эту пагу??? В парсинге новичок поэтому столько вопросов...
слух не парься поиши на php.net есть класс эулятор браузера а конкретнее вот: To emulate a web browser with PHP using socket functions, there is a very good class to do this: http://sourceforge.net/projects/snoopy/ Some of its features: * easily fetch the contents of a web page * easily fetch the text from a web page (strip html tags) * easily fetch the the links from a web page (add a filter for "mailto:" links and you can easily fetch e-mail addresses). * supports proxy hosts * supports basic user/pass authentication * supports setting user_agent, referer, cookies and header content * supports browser redirects, and controlled depth of redirects * expands fetched links to fully qualified URLs (default) * easily submit form data and retrieve the results * supports SSL and frames snoopy - помойму isis использует иногда этот ник=)
Ну чтож, благодарю! Придется все заново писать - еще минус один день! Кстати, у меня еще пару вопросов: вот у меня стоит движок phpbb 3.0.0, я хочу найти на него такие моды как репутация (с плюсиками и минусами), стаж (проведенное время на форуме), еще у меня скопилось много баннеров внизу 88*31, но на одном сайте я видел - что-то типа бегущей строки из баннеров! Никто не знает как это реализовать или где можно найти!?
truelamer Ну раз залогиниться удалось, значит, при удачной авторизации тебя наградили кукисами. При следующем запросе устанавливай вдобавок к другим полям Get/post-запроса эти полученные "печеньки". Как получишь результат, парсь на искомый текст
насколько я знаю мод репутации для пхпББ не существует. для этого воблу мона поставить. начет баннеров это наверное JavaScript
тебе что хостеры ответили что не делают бекапы?? скажи что у тебя за хостинг, не буду им пользоваца=))