Pobranie pliku z URL w PHP[SOLVED]

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Awatar użytkownika
leon1313
Zakręcona Traszka
Zakręcona Traszka
Posty: 668
Rejestracja: 02 sty 2006, 19:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: KDE Plasma
Architektura: x86

Pobranie pliku z URL w PHP[SOLVED]

Post autor: leon1313 »

Witam;
Potrzebuje pobrać plik ze strony o danym adresie za pomocą PHP i zapisać go na serwer (plik XML dla parsera).
Dostęp do strony wymaga autentykacji użytkownik- hasło (dane te posiadam).

Wie ktoś z szanownych koderów "jak to zrobić"?
/edit metoda system("wget.... "); jest mi znana, ale szukam innej
"Poza tym dostałeś PLONKa i zabraniam Ci pisać na te grupe!!! Powiedziałem PLONK i sie zamknij i nawet nie knuj rzeby mi odpisywać! Zabraniam!!!"
Awatar użytkownika
f00sek
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 109
Rejestracja: 18 kwie 2009, 15:54
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86_64
Kontakt:

Odp: Pobranie pliku z URL w PHP

Post autor: f00sek »

Co złego we wgetcie? Można pobierać również z autoryzacji HTTP:

Kod: Zaznacz cały

wget --http-user=USER --http-passwd=PASS plik
System.out.println ("Java programmer");
minchal
Piegowaty Guziec
Piegowaty Guziec
Posty: 20
Rejestracja: 15 mar 2006, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Pobranie pliku z URL w PHP

Post autor: minchal »

może przez curl?
Awatar użytkownika
leon1313
Zakręcona Traszka
Zakręcona Traszka
Posty: 668
Rejestracja: 02 sty 2006, 19:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: KDE Plasma
Architektura: x86

Odp: Pobranie pliku z URL w PHP

Post autor: leon1313 »

f00sek pisze:Co złego we wgetcie? Można pobierać również z autoryzacji HTTP:

Kod: Zaznacz cały

wget --http-user=USER --http-passwd=PASS plik
Toż pisałem, ze metoda mi jest znana.... :-)
"Poza tym dostałeś PLONKa i zabraniam Ci pisać na te grupe!!! Powiedziałem PLONK i sie zamknij i nawet nie knuj rzeby mi odpisywać! Zabraniam!!!"
djhors
Piegowaty Guziec
Piegowaty Guziec
Posty: 20
Rejestracja: 10 lis 2006, 11:59
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: GNOME
Kontakt:

Odp: Pobranie pliku z URL w PHP

Post autor: djhors »

Martin
Administrator, LAMP Developer & Specialist, DJ
WorldofShadow.co.uk
Awatar użytkownika
leon1313
Zakręcona Traszka
Zakręcona Traszka
Posty: 668
Rejestracja: 02 sty 2006, 19:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: KDE Plasma
Architektura: x86

Odp: Pobranie pliku z URL w PHP

Post autor: leon1313 »

A co z autentykacją?
"Poza tym dostałeś PLONKa i zabraniam Ci pisać na te grupe!!! Powiedziałem PLONK i sie zamknij i nawet nie knuj rzeby mi odpisywać! Zabraniam!!!"
dawidgarus
Wytworny Kaczor
Wytworny Kaczor
Posty: 418
Rejestracja: 09 lut 2007, 23:17
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Pobranie pliku z URL w PHP

Post autor: dawidgarus »

sprawdź, czy adres w formacie login:hasło@serwer.pl działa.
djhors
Piegowaty Guziec
Piegowaty Guziec
Posty: 20
Rejestracja: 10 lis 2006, 11:59
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: GNOME
Kontakt:

Odp: Pobranie pliku z URL w PHP

Post autor: djhors »

Oczywiście to działa przy zwykłej autoryzacji http. Jednak jeśli w twoim przypadku chodzi o logowanie na stronę poprzez formularz to oczywiście nie zadziała. No ale jak wiadomo większość takich autoryzacji polega na cookies i tu mammy curl:

Kod: Zaznacz cały

<?php
//inicjacja curl
$ch = curl_init();

// strona logowania - gdzie mamy formularz
curl_setopt($ch, CURLOPT_URL, 'http://innastrona.pl/login.php');

// ustawiamy zapytanie POST
curl_setopt ($ch, CURLOPT_POST, 1);

// Parametry POST : Chodzi o parametry jakie sa w formularzu
// najczesciej jest to poprostu login i pass jednak curlowi podajemy to tak
// jakby było to zapytanie GET
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'login=mylogin&pass=mojehaslo');

// coś w rodzaju 'hello jestem przegladarka ktora ustawia cookies'
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

// ustawiamy transfer
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

// wykonanie logowania
$store = curl_exec ($ch);

//ściagamy nasz plik
curl_setopt($ch, CURLOPT_URL, 'http://innastrona.pl/pliki/mojplik.xml');

// ściagamy plik do zmiennej
$content = curl_exec ($ch);

// zamykamy curl'a
curl_close ($ch);

?>
No i to tyle. Po wiecej sięgnij docurl
Martin
Administrator, LAMP Developer & Specialist, DJ
WorldofShadow.co.uk
Awatar użytkownika
leon1313
Zakręcona Traszka
Zakręcona Traszka
Posty: 668
Rejestracja: 02 sty 2006, 19:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: KDE Plasma
Architektura: x86

Odp: Pobranie pliku z URL w PHP

Post autor: leon1313 »

Dziękuję!!
"Poza tym dostałeś PLONKa i zabraniam Ci pisać na te grupe!!! Powiedziałem PLONK i sie zamknij i nawet nie knuj rzeby mi odpisywać! Zabraniam!!!"
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Bing [Bot] i 6 gości