Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Jak uzyskać efekt 'zapisz element docelowy jako' ?
elmozaur
post 30.12.2015, 10:18:47
Post #1





Grupa: Zarejestrowani
Postów: 518
Pomógł: 18
Dołączył: 21.07.2008

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


Witam.
Mam kawałek kodu, który generuje plik wynikowy na serwerze.
Po zakończonym generowaniu chciałbym uzyskać efekt taki jak przeglądarkowy 'zapisz element docelowy jako' (czyli request z możliwością wskazania miejsca zapisu, nazwy pliku itp).

Pogooglalem trochę i znalazłem sporo odpowiedzi typu wysłanie nagłówka i przeczytanie pliku, niestety żadne z wypróbowanych rozwiązań nie działa tak jak bym chciał.
W różnych kombinacjach testowałem nagłówki
  1. header("Cache-Control: public");
  2. header("Content-Description: File Transfer");
  3. header("Content-Disposition: attachment; filename=$file");
  4. header("Content-Transfer-Encoding: binary");
  5. header("Content-Type: binary/octet-stream");
  6. header("Content-type: application/octet-stream");
  7. header('Content-type: text/plain');
  8. header("Content-Type: application/download");
  9. header("Content-Length: " . filesize($tempFileName));
  10. readfile($tempFileName);

Efekt który uzyskuje to raczej 'otwórz' lub 'zapisz' - czyli bez możliwości wskazania nazwy pliku i miejsca docelowego.
Przykłady testuje w środowisku lokalnym na najnowszym FF i Chrome.

Ktoś może coś podpowiedzieć ?
Go to the top of the page
+Quote Post
Pyton_000
post 30.12.2015, 10:22:42
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Zapisz jako to jest funkcja przeglądarkowa. Nie wywołasz takiego efektu w PHP
Go to the top of the page
+Quote Post
ohm
post 30.12.2015, 13:30:15
Post #3





Grupa: Zarejestrowani
Postów: 623
Pomógł: 144
Dołączył: 22.12.2010

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


Możesz spróbować przez nadanie Content-Type: application/force-download ale ogolnie raczej niepolecane.
Go to the top of the page
+Quote Post
miras
post 30.12.2015, 13:51:47
Post #4





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


Proponuję to zrobić za pomoca .htaccess


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2025 - 03:52