Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zła nazwa pliku podczas download !, Chyba HEADER jest zły...
porowski
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.07.2004
Skąd: Łódź

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


Ponizej znajduje sie kod, ktory niby dziala a niby nie...

Problem jest w tym ze plik dwonloaduje sie prawidlowo, ale nazwa do zapisu cos jest nie tak... tzn... w Internet Explorer podczas wyswietlenia sie okienka do zapisu pliku nie ma "mojej nazwy" pliku tylko taka zama jak nazwa pliku php. Np jak plik nazywa sie video.php to plik zapisuje sie pod nazwa video.avi zamiast moja_nazwa.avi

W innych przegladarkach jest wszystko OK... nazwa pliku jest prawidlowa


  1. <?php
  2.  
  3. $filename = 'moja_nazwa.avi';
  4. $file = 'video/xyz123.avi';
  5. $size = filesize($file);
  6. $roz = strtolower(substr(strrchr($filename, &#092;".\"), 1));
  7.  
  8. switch($roz)
  9. {
  10. case avi: $mime = 'video/x-msvideo'; break;
  11. case wmv: $mime = 'video/x-ms-wmv'; break;
  12. case mpg: $mime = 'video/mpeg'; break;
  13. case mpeg: $mime = 'video/mpeg'; break;
  14. case mpe: $mime = 'video/mpeg'; break;
  15. case mov: $mime = 'video/quicktime'; break;
  16. case gt: $mime = 'video/quicktime'; break;
  17. case rm: $mime = 'application/vnd.rn-realmedia'; break;
  18. case rv: $mime = 'video/vnd.rn-realvideo'; break;
  19. }
  20.  
  21. header(&#092;"Content-Type: $mime\");
  22. header(&#092;"Content-Length: $size\");
  23. header(&#092;"Content-Disposition: attachment; filename=$filename\");
  24.  
  25. @readfile($file);
  26.  
  27. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
tiraeth
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

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


Cytat(MANUAL)
...

Notatka: W Microsoft Internet Explorer 4.01 jest błąd, który uniemożliwia wykorzystanie tego mechanizmu. Nie ma na to rozwiązania. Błąd, który zahacza o ten mechanizm, jest także w Microsoft Internet Explorer 5.5, jednak da się go ominąć aktualizując przeglądarkę poprzez Service Pack 2 lub póniejszy.

...

Wniosek wyciągnij sam smile.gif
Go to the top of the page
+Quote Post
porowski
post
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.07.2004
Skąd: Łódź

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


mam pełna aktualke do IE... service pack 2 i wszelkie inne co byly do niej...

i wie, ze to dziala na mojej IE, dlatego bo jak sciagam pliki z pewnego servera to jest OK, a wiem ze jest ta taki system zapisu plikow... niestety nie mam dostepu do kodu sad.gif
Go to the top of the page
+Quote Post
crash
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

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


Z tego co kiedyś tam wydłubałem z phpMyAdmina wyczaiłem, że IE jak zwykle udziwiniając działa poprawnie gdy dostanie nagłówek: Content-Disposition: inline; filename = "nazwa_pliku"


--------------------
Go to the top of the page
+Quote Post
porowski
post
Post #5





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.07.2004
Skąd: Łódź

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


jak mam: Content-Disposition: inline; filename = "nazwa_pliku"
to automatycznie otwiera mi playera i odtwarza plik przez siec, zamiast wyskakiwac okienko dwownloadu :|
Go to the top of the page
+Quote Post
pauluZ
post
Post #6





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 9.02.2004
Skąd: Toruń

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


Witajcie.
Właśnie mam ten problem:
ten sam skrypt na dwóch serwerach:
  1. <?php
  2. // We'll be outputting a JPG
  3. header('Content-type: image/jpeg');
  4. header('Content-Disposition: attachment; filename=\"graf2.jpg\"');
  5. readfile('graf2.jpg');
  6.  
  7. ?>

I na jednym serwerze otwiera plik ok i chce go zapisywać a na drugim serwerze
mówi że nie potrafi otworzyć tego pliku (w ogóle pokazuje mi nazwę skryptu php zamiast nazwę grafiki).
NIe musze wspominać że jestem pod WinME mam IE 6.0 z SP1 i w jednym oknie otwieram http://serwer_1.pl/skypt.php a w drugim http://serwer_2.pl/skypt.php
(ten sam skrypt)

Jakie opcje wpływają na download plików poprzez skrypty ?
coś w php.ini?!?
(allow_url_fopen, file_uploads, post_max_size, ... ?!?)
czy coś w ustawieniach Apache?

PS. Porównuję wszystko już chyba od godziny i na prawde mam oba serwery 'prawie' ;-) identyczne .... a na jednym działa a na drugim nie ....


--------------------
pauluZ
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 Aktualny czas: 19.08.2025 - 18:38