![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 29.06.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
Witam,
mam skrypt, którego fragment odpowiedzialny za pobieranie pliku wygląda następująco:
jeżeli wgram jakiś plik z polskimi znakami w nazwie (np. ąśółżźćńĄŚŹŻĆ.mpe), to przy pobieraniu plików, gdy najadę na link do pliku, w adresie widzę poprawną nazwę z polskimi znakami. Gdy zaś kliknę "pobierz", to plik jest zapisywany pod nazwą (np. şźźććę₏ąśşźć.mp3) dzieje się tak tylko pod IE, pod Operą i FF nazwy zapisywanych plików są poprawne. Dodam, że wszystkie dane na stronie z formularzem oraz baza danych są w kodowaniu UTF-8 Czy ktoś ma pomysł co z tym zrobić? |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%)
|
Może w tym przypadku to system narzuca kodowanie nazwy pliku jeśli zostanie on ściągnięty i zapisany. Tzn. ściągasz w UTF-8 a system narzuca jakieś inne kodowanie i się gryzą. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Nie wiem jak to jest naprawdę i nie uważam tego pomysłu za pewnik, ale możesz spróbować wysłać plik w innym kodowaniu. Może będzie dobrze.
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 10 Dołączył: 16.08.2007 Ostrzeżenie: (0%)
|
header('Content-Disposition: attachment; filename="'.[b]$file->fil_uploaded_filename[/b].'"'); Może tutaj postaraj się coś porobić z nazwą? Skonwertuj ją na parę innych kodowań, może zadziała? np z utf na win-costam (nie pamietam kodu dla polski) Ten post edytował Exek 19.08.2007, 12:42:07 |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 29.06.2003 Skąd: Warszawa Ostrzeżenie: (0%)
|
próbowałem już wcześniej wysyłać inne dane w nagłówku
także próbowałem konwertować nazwę przez mbstring (iconv nie ma na serwerze), ale nie dawało to rezultatów. Dziwi mnie najbardziej to, że poprawne nazwy są pobierane przez FF i Opere, a tylko przez IE są krzaki (u moich znajomych podobnie), no i myślałem, że może ktoś miał podobny problem, może trzeba jeszcze jakieś dodatkowe nagłówki nadać. |
|
|
|
Post
#5
|
|
|
Grupa: Przyjaciele php.pl Postów: 2 605 Pomógł: 96 Dołączył: 22.10.2004 Skąd: UK Ostrzeżenie: (0%)
|
No cóż IE jest inne, musisz nazwę pliki zakodować w standardowym windowsowym kodowaniu (chyba windows-1250). Otwórz ten plik w windowsowym notatniku i zapisz z polskimi znakami, powinno być ok. Musisz sobie zrobić wersję specjalnie pod IE, aby w tym kodowaniu ta nazwa pliku była ehh.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 5.12.2025 - 20:47 |