Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][csv]zrzut tabeli mysql do pliku csv na dysku użytkownika
maclast
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 16.08.2010

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


Cześć,

Poszukałem na forum i znalazłem rozwiązanie mojego problemu: czyli zrzut tabeli do pliku csv.
Wiem, że można to zrobić zapytaniem sql albo bawiąc się funkcją fputcsv.

ale mam jeszcze jeden powiązany z tym problem, którego rozwiązać na razie nie potrafię.

Chodzi mi o to, że user będzie miał możliwość filtrowania danych w danej tabeli i chciałbym, żeby po naciśnięciu jakiegoś butona mógł zapisać ten wynik w pliku csv na dysku. (jakieś okienko z podaniem ścieżki itp).

Czy da się tak zrobić używając tylko PHP?

(obecnie mam tak zrobione, że za każdym razem jak dokonuje filtracji, dane są zapisywane do pliku csv i na stronie z wynikiem filtrowania umieszczam link do pliku, ale to takie mało eleganckie rozwiązanie... do tego jak dwóch userów używa aplikacji to musza oddzielnie pracować na własnych plikach - i server rzeźbi dyskiem :/)

Pozdrawiam.


Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Tak da się. Poczytaj o force download
Go to the top of the page
+Quote Post
maclast
post
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 16.08.2010

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


Dzięki.

To jeszcze jedno drobne pytanie:
Poczytałem o tym i zauważyłem, że istnieje możliwość, że razem z plikiem mogą iść jakieś html'owe śmieci, więc całą konstrukcję "force download" umieściłem w oddzielnym pliku/skrypcie.
Pytanie następujące: czy da się wywołać skrypt (który jest w oddzielnym pliku) nie wychodząc z podstrony?
tzn. użyłem konstrukcji <form> i submit buttona... ale po kliknięciu wyświetliło mi skrypt obsługujący (czyli czystą białą kartkę... co też w sumie jest oczywiste przy submicie (IMG:style_emoticons/default/winksmiley.jpg)
a chciałbym, żeby pozostał na stronie z której skrypt jest wywoływany (w sumie można by wrzucić http_redirect ale może jest coś ładniejszego?)


PS. jeszcze jedna sprawa. fputcsv jest standardową funkcją dla php5? bo mi coś krasnolud jęczy, że nie ma takiej funkcji :/
Fatal error: Call to undefined function: fputcsv() in c:\usr\krasnal\www\testdb\force_download_csv.php on line 17

pozdrawiam,
Maciek
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(maclast @ 14.09.2010, 12:02:53 ) *
tzn. użyłem konstrukcji <form> i submit buttona... ale po kliknięciu wyświetliło mi skrypt obsługujący (czyli czystą białą kartkę... co też w sumie jest oczywiste przy submicie (IMG:style_emoticons/default/winksmiley.jpg)
a chciałbym, żeby pozostał na stronie z której skrypt jest wywoływany (w sumie można by wrzucić http_redirect ale może jest coś ładniejszego?)

W firefoxie otworzy się okienko do zapisu i pozostaniesz na aktualnej stronie z której przybyłeś. Innej opcji na force download nie ma.

Cytat
PS. jeszcze jedna sprawa. fputcsv jest standardową funkcją dla php5? bo mi coś krasnolud jęczy, że nie ma takiej funkcji :/
Fatal error: Call to undefined function: fputcsv() in c:\usr\krasnal\www\testdb\force_download_csv.php on line 17

http://pl.php.net/manual/en/function.fputcsv.php od 5.1.0 i nie używał krasnala bo to shit na kółkach.
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: 7.10.2025 - 10:48