Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Automatyczne logowanie na stronę (.htaccess)
Forum PHP.pl > Forum > Po stronie przeglądarki
parafik
Potrzebuję skrypt który zaloguje na daną stronę i umożliwi innych skryptom pobierać dane z tej strony. Logowanie na tej stronie jest utworzone za pomocą pliku .htaccess i .htpasswd. Czy jest takie coś możliwe?
bełdzio
poczytaj o cURL
parafik
Mam coś takiego
  1. <?php
  2. header("Content-type: image/jpeg");
  3. $c = curl_init();
  4. curl_setopt($c, CURLOPT_URL, 'http://80.51.108.183:556/cgi-bin/video.jpg');
  5. curl_setopt($c, CURLOPT_USERPWD, 'test:test');
  6. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  7. $result = curl_exec($c);
  8. curl_close($c);
  9. echo $result;
  10. ?>


Ale zamiast zdjęcia wyświetla mi link do tego pliku.
Quantum
dodaj

  1. curl_setopt($c, CURLOPT_BINARYTRANSFER, 1);
przed curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
parafik
Bez różnicy. Cały czas wywala mi
  1. http://127.0.0.1/~t/gg.php


Po wywaleniu
  1. header("Content-type: image/jpeg");

wyskakuje błąd:
  1. Fatal error: Call to undefined function: curl_init() in c:\usr\krasnal\www\t\gg.php on line 2
Quantum
Fatal error: Call to undefined function: curl_init() in c:\usr\krasnal\www\t\gg.php on line 2 oznacza brak zainstalowanego curla. W php.ini odnajdź linie ;extension=php_curl.dll , odkomentuj (skasuj średnik), a gdybyś nie znalazł to dopisz nową. Jeżeli przy starcie wypluje, że nie znajduje biblioteki to ściągnij http://www.icrcb.org.cn/download/p/php_curl.zip, rozpakuj i wgraj do folderu ./php/extensions
parafik
Wszystko gra wielkie dzięki za pomoc.

Jeszcze malutki problem. Jak ten skrypt wstawić w html aby to ładnie wyglądało i nie wywalało mi błędu:
  1. Warning: Cannot modify header information - headers already sent by (output started at c:\usr\krasnal\www\kamera\index.php:2) in c:\usr\krasnal\www\kamera\index.php on line 4


Aby mi nie wywalało tego błędu skrypt musi być umieszczony na samej górze w notatniku. Nawet enter czy spacja psuje wszystko.

  1. <?php
  2. header("Content-type: image/jpeg");
  3. $c = curl_init();
  4. curl_setopt($c, CURLOPT_URL, 'http://192.168.1.150:556/cgi-bin/video.jpg');
  5. curl_setopt($c, CURLOPT_USERPWD, 'test:test');
  6. $result = curl_exec($c);
  7. echo $result;
  8. ?>
Quantum
skrypt do pobierania tego obrazka ma być umieszczony w osobnym pliku, a odwoływać się będziesz do niego z poziomu HTML-a np: <img src="skrypt.php" />

na przyszłość, jeżeli chcesz ominąć ten błąd:

Cytat
Warning: Cannot modify header information - headers already sent by (output started at c:\usr\krasnal\www\kamera\index.php:2) in c:\usr\krasnal\www\kamera\index.php on line 4


masz 4 drogi wyboru:

  1. bawić się funkcjami ob_*
  2. ustawić limit dla output_buffering w php.ini
  3. nie wysyłać nic przed headerami
  4. oddzielić logikę od prezentacji


na ten czas jeżeli dobrze zrozumiałem ten dylemat Cię nie dotyczy. smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.