23.07.2007, 17:02
общий
это ответ
Здравствуйте, Volodimir !
В РНР есть такой модуль как Curl. Он позволяет в точности делать действия, которые выполняет браузер, т.е. в данном случае вначале отсылать логин с паролем на страницу логина, получить от туда значение куки (или сессию) и передать это в следующем запросе на нужную нам страницу.
Пример для логина в приложении, но уже какие точно данные надо посылать и в какие переменные - зависит от сайта и разбирать его придется вначале вручную. Либо же писать более сложный скрипт, что будет сам это делать. В переменную $result приходит вся страница, т.е. функция copy уже включена :)
Для работы с Curl-ом необходимо "включить" эту библиотеку в php.ini.
Приложение:
$curl = curl_init();$url = "http://localhost/forum2/login.php";$post= "username=qwer&password=qwer&redirect=&login=Вход";$result = GetHTML($url,$post);echo($result."
");function GetHTML ($url,$post=false) { global $curl; curl_setopt($curl,CURLOPT_URL,$url); if ($post) { curl_setopt($curl,CURLOPT_POST,TRUE); curl_setopt($curl,CURLOPT_POSTFIELDS,$post); } else { curl_setopt($curl,CURLOPT_POST,FALSE); } curl_setopt($curl,CURLOPT_HEADER,1); curl_setopt($curl,CURLOPT_RETURNTRANSFER,TRUE); $result = curl_exec($curl); return $result;}