ďťż
Podstrony
|
telcocafeCzy da się w jakiś sposób w którymś z języków PHP HTML, lub JS zrobić coś takiego, że jak ktoś klika na linku pliku z rozszerzeniem np. .htm albo .doc to mu wyskakuje takie okienko do zapisywania jak przy plikach .exe?Użytkownik phpowiec edytował ten post 27 październik 2006, 15:58 Czy da się w jakiś sposób w którymś z języków PHP HTML, lub JS zrobić coś takiego, że jak ktoś klika na linku pliku z rozszerzeniem np. .htm albo .doc to mu wyskakuje takie okienko do zapisywania jak przy plikach .exe? Co masz na myśli pisząc "takie okienko do zapisywania jak przy plikach .exe" ? Uściślij albo daj jakieś screen-shoty. W php możesz to zrobić np tak <?php header ('content-type: application/x-octet-stream'); header ('location: wlasciwy_plik.htm'); ?> I daj link do tego skryptu. Można go zmienić by był bardziej uniwersalny i sprawdzać jaki plik wysłać, ale przedstawiłem ogólnie jak to zrobić. Co masz na myśli pisząc "takie okienko do zapisywania jak przy plikach .exe" ? Uściślij albo daj jakieś screen-shoty. Chodzi mi o okienko dialogowe gdzie można wybrać otwórz, zapisz, anuluj. W php możesz to zrobić np tak <?php header ('content-type: application/x-octet-stream'); header ('location: wlasciwy_plik.htm'); ?> I daj link do tego skryptu. Można go zmienić by był bardziej uniwersalny i sprawdzać jaki plik wysłać, ale przedstawiłem ogólnie jak to zrobić. Dzięki za podpowiedź zaraz sprawdzę! //EDIT NIESTETY NIE DZIAŁA!!! To by było dobre gdybynie to, że to przekierowywuje i tak bezpośrednio do tego pliku czyli wynik mam taki jakbym dał zwykły link... Użytkownik phpowiec edytował ten post 27 październik 2006, 17:18 Hmmm, to może tak: (sprawdziłem, działa) <?php header ('content-type: application/x-octet-stream'); include ('plik.htm'); ?> Nie wiem czy Ci odpowiada ten efekt ale przy okazji maskuje skąd ten plik jest pobierany. Niestety, podejrzewam że przy dużych plikach (po pare/naście mb) serwer może się zbuntować. Ale jeśli chodzi tylko o pliki tekstowe, np html - będzie dobrze. $filename = 'plik.doc'; $fp = fopen('./files/'.$filename, 'r'); $contents = fread($fp, filesize($filename)); header('Content-Type: application/octet-stream'); header('Content-Lenght: '.filesize($filename).';'); header('Content-Disposition: attachment; filename="'.$filename.'"'); echo $contents; Powinno być dobrze. edit> ale pewien nie jestem bo pisałe to na szybko ;p Użytkownik orglee edytował ten post 27 październik 2006, 17:44 $filename = 'plik.doc'; $fp = fopen('./files/'.$filename, 'r'); $contents = fread($fp, filesize($filename)); header('Content-Type: application/octet-stream'); header('Content-Lenght: '.filesize($filename).';'); header('Content-Disposition: attachment; filename="'.$filename.'"'); echo $contents; Powinno być dobrze. edit> ale pewien nie jestem bo pisałe to na szybko ;p Dzięki wielkie! Działa! |
|||
Sitedesign by AltusUmbrae. |