Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak pobrać i zapisać zdalny plik csv na dysku
amii
post
Post #1





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

Ostrzeżenie: (0%)
-----


Nie wiem czy takie coś się da zrobić ale do rzeczy. Mam stronę a na niej link coś w postaci:
https://strona.pl/index.php/products/getcsv...41d887b4e7c139e
po kliknięciu w ten link wyświetla mi się takie okno:
(IMG:http://telealkomaty.pl/images/grafika.jpg)
Plik sobie gdzieś zapisuje na lokalnym dysku. Chciałbym jednak żeby to skrypt zapisywał ten plik i później go obrabiał. Jakieś pomysły ?
Go to the top of the page
+Quote Post
marcio
post
Post #2





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


skoro jest to plik csv wyslij go do przegladarki i potem za pomoca file_get_contents() pobierz zawartosc lub sockety co tylko zechcesz..
Go to the top of the page
+Quote Post
amii
post
Post #3





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

Ostrzeżenie: (0%)
-----


marcio takim prostym duperelem nie zawracałbym Wam głowy (IMG:style_emoticons/default/smile.gif) To nie jest gotowy plik csv , plik się generuje w momencie kliknięcia na link, po za tym pozostaje problem z ominięciem okna i zapisem na lokalny dysk.
Go to the top of the page
+Quote Post
marcio
post
Post #4





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


z poziomu php raczej nie da sie zapisac pliku na dysk lokalny bez potwierdzenia okienka...tak mi sie wydaje nie jestem pewny w 100%
Go to the top of the page
+Quote Post
Sephirus
post
Post #5





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Ok zasada jest prosta - Przeglądarka jest po stronie użytkownika - dosłownie i w przenośni - nie pozwoli więc na zapis pliku na dysku "ot tak!" (IMG:style_emoticons/default/smile.gif)

Juzer musi potwierdzić taką operację. Innymi słowy nie ma opcji bez dodatkowewgo (czy nawet dedykowanego) oprogramowania.

Trzeba by było napisać własną "przeglądarkę" lub program który by się tym zajął.

HTH! (IMG:style_emoticons/default/wink.gif)

A jeżeli bardzo Ci na tym zależy to możesz zrobić jeszcze inaczej. Jeżeli masz stałe IP (co jest teraz dość często spotykane) możesz zrobić tak:

Zainstaluj sobie serwer ftp, ustal login, hasło i jakiś katalog.

W aplikacji na stronie możesz połączyć się poprzez PHP ze swoim FTP i działać tam jak tylko chcesz (IMG:style_emoticons/default/wink.gif)

START: Tutaj (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
cezet
post
Post #6





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 5.12.2006

Ostrzeżenie: (0%)
-----


Troszkę nie rozumiem na czym polega problem.
Przecież jeśli byś np. chciał pobrać źródło strony http://php.pl/index.php - też użyłbyś file_get_contents() albo curl'a,
pomimo że źródło strony jest generowane dynamicznie.

I nawet jeśli w tym przypadku csv jest generowane w momencie zażądania obiektu z tej lokalizacji - przejmiesz w odpowiedzi serwera gotowy wygenerowany plik.

A to czy w przeglądarce okienko wyskakuje czy nie - to decyduje tylko jeden z elementów nagłówka odpowiedzialny za "typ danych"
Jesli w nagłówku odpowiedzi serwera będzie text/html - to przeglądarka wyświetli Ci stronę.
Jeśli natomiast będzie np. application/zip albo text/csv to wyskoczy Ci takie okienko,
ale treścią odpowiedzi serwera i tak będzie zawartość pliku.

Czy przed zadaniem pytania próbowałeś najpierw spróbować użyć file_get_contents() ?
Go to the top of the page
+Quote Post
amii
post
Post #7





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

Ostrzeżenie: (0%)
-----


OK problem rozwiązany. Było tak jak pisał cezet, trzeba tylko było zalogować się poprzez CURL a z tym był problem na lokalnym serwerze (open_base_dir).
Natomiast tworząc plik do obsługi CURL, logowania i wyświetlania CSV na serwerze zewnętrznym a następnie wczytując jego treść z innego serwera lokalnego przez file_get_contents udało się to obejść.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.01.2026 - 12:21