Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wymuszenie okna dialogowego do zapisu pliku
Forum PHP.pl > Forum > PHP
gilbo
Witam chciałbym się zapytać jak mogę zrobić skrypt, który pozwoli mi na wymuszenie otwarcia okna dialogowego do zapisu plików z rozszerzeniami takimi jak .htm .doc .php.

Chodzi mi o takie okno jakie pojawia się przy sciąganiu plików np. .exe lub .zip

Próbowałem tak:
  1. <?php
  2. header ('content-type: application/x-octet-stream');
  3. header ('location: '.$_GET['file']);
  4. ?>


ale to było bez sensu bo to przekierowywało do tego pliku i był efekt taki jakbym poprostu dał ścieżkę do pliku w linku.

potem próbowałem tak:
  1. <?php
  2. header ('content-type: application/x-octet-stream');
  3. include($_GET['file']);
  4. ?>


niestety bezskutecznie ponieważ zamiast pliku np. dokument.doc zapisywało się jako getfile.php (nazwa tego skryptu do którego chcę przekierowywać linki w celu wymuszenia okna) co prawda wszystko dobrze działało, ale zmieniała się nazwa i rozszerzenie pliku a mi nie oto chodzi.

Bardzo proszę o pomoc!
Pozdrawiam!
mike
Blisko byłeś smile.gif
Przykład zaczerpnięty z manuala funkcji header
  1. <?php
  2. // przesyłamy plik PDF
  3. header('Content-type: application/pdf');
  4.  
  5. // ustawiamy jego nazwę na downloaded.pdf
  6. header('Content-Disposition: attachment; filename="downloaded.pdf"');
  7.  
  8. // treść znajduje się w pliku original.pdf
  9. readfile('original.pdf');
  10. ?>
gilbo
Wielkie dzięki!
Pozdrawiam!
Czadus
To ja pozwolę sobie zadać pytanie związane z tematem. Wymusić zapis pliku już możemy. Ale ja mam pytanie, czy wyżej pokazany sposób pozwoli na zapis pliku bezpośrednia z miejsca w które kliknąłem. Tak jak to czasami jest na stronach. Czyli mamy ikonkę zapisz, klikamy, i od razu pojawia się okienko zapisu. Bo cały sęk w tym, że takie pliki, jak *.pdf często otwierają się w tym samym oknie, zamiast zapisywać się. A ja właśnie tego nie chce.
vokiel
@Czadus to już zależy od przeglądarki, możesz sobie ustawić, że dane rozszerzenie wyświetla za pomocą wtyczki, pobiera, albo uruchamia program, wszystko zależy od ustawień użytkownika
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.