Skocz do zawartości

Jak otworzyć stronę www funkją fopen?


yavaho

Rekomendowane odpowiedzi

Czy można funkją fsockopen, fopen lu podobną otworzyć/pobrać url, który dostępny jest tylko po przesłaniu formularza - poprzez przesłanie danych metodą POST ?

Albo czy jest jakaś inna mozliwość aby z poziomu skryptu php odczytać strone html, ktora dostępna jest tylko gdy wysłane zostaną zmienne w $_POST ?

.

Odnośnik do komentarza
Udostępnij na innych stronach

Cemu nie poczytasz manual PHP?

// Data to pass to the cgi script 
$name = 'John Doe'; 
$email = 'johndoe@domain.com'; 
$msg = 'Nice site, I love your animated gif collection!'; 

// Build the request string 
$request = 'name=' . urlencode($name); 
$request .= '&email=' . urlencode($email); 
$request .= '&msg=' . urlencode($msg); 

// Build the header 
$header = "POST /guestbook/add.php3 HTTP/1.0\r\n"; 
$header .= "Content-type: application/x-www-form-urlencoded\r\n"; 
$header .= "Content-length: " . strlen($request) . "\r\n\r\n"; 

// Open the connection 
$fp = fsockopen('www.domain.com', 80, &$err_num, &$err_msg, 30); 
if ($fp) 
{ 
// Send everything 
fputs($fp, $header . $request); 
// Get the response 
while (!feof($fp)) 
$response .= fgets($fp, 128); 
} 

Odnośnik do komentarza
Udostępnij na innych stronach

Dzieki

Już coś zaczynam oczytywać.

viras: do Twojego przykładu musiałem dodać wiecej nagłówków bo w powyższej postaci nie zadziała.

$header = "POST /index.php HTTP/1.1\r\n"; 
$header .= "Content-type: application/x-www-form-urlencoded\r\n"; 
$header .= "Content-length: " .strlen($request). "\r\n"; 
$header .= "Host: www.domain.com\r\n";
$header .= "Connection: Close\r\n\r\n";

Ale jeszcze nie do konca wszystko działa bo chyba nie każdy serwer pozwala na takie połączenie?

Więc próbowałem tez to zrobić w CURL.

$c = curl_init(); 
curl_setopt($c, CURLOPT_URL, "https://www.domain.com"); 
curl_setopt($c, CURLOPT_POST, 1); 
curl_setopt($c, CURLOPT_POSTFIELDS, "z1=aaa&z2=bbb"); 
curl_exec($c); 
curl_close($c); 

Tylko jednej banalnej rzeczy nie moge znaleźć. Nie wiem jak przypisać do zmiennej to co zwraca CURL.

Domyślnie od razu wyświetla wszystko w przeglądarce. Do pliku np zapisuje poprzez: CURLOPT_WRITEHEADER

A jak przypisać pobrane dane po prostu do zmiennej?

.

Odnośnik do komentarza
Udostępnij na innych stronach

viras: do Twojego przykładu musiałem dodać wiecej nagłówków bo w powyższej postaci nie zadziała.

Podalem ci surowy przyklad z manuala bo sam nie umiales znalezc :P , jak chcesz gotowy skrypt pisz na PW za oplata :)

A jak przypisać pobrane dane po prostu do zmiennej?

...
// zwracac rezultat w zmienna a nie w STDOUT
curl_setopt ($c, CURLOPT_RETURNTRANSFER, 1);
...
$result = curl_exec ($c); // wykonac 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 miesiące temu...

Czy za pomocą CURL można pobrać obrazek (podając lokalizacje do konkretnego pliku) a potem wyświetlić ten obrazek w przeglądarce?

Moze to troche dziwne bo czemu od razu nie wyswietlic tego obrazka? Ale chodzi mi tu konkretnie o pobranie ciasteczka właśnie podczas odczytu obrazka, a obrazek generowany jest przez skrypt php.

.

Odnośnik do komentarza
Udostępnij na innych stronach

cURL łączy się z każdym plikiem, nie zależnie czy jest to exe, html, jpg.

A po pobraniu obrazka musisz wysłać jeszcze odpowiedni nagłówek do przeglądarki informujący że to co chcesz wyświetlić to obrazek.

stopka usunieta z wpoodu wirusa na stronie docelowej

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności