[php] usuwanie polskich znakow przy uploadzie

       

Podstrony


telcocafe

witam!
mam taki kod:
<?php $dir = 'upload/'; $rozszerzenie = explode(".", $_FILES['plik']['name']); $zabronione = array('php', 'html', 'htm', 'js', 'php1', 'php2', 'php3', 'php4', 'php5', 'php6', 'xhtml', 'css', 'vb', 'xml'); if(count($rozszerzenie) > 2) { echo 'Nie poprawna nazwa pliku!'; } else { if(in_array("$rozszerzenie[1]", $zabronione)) { echo "Nie poprawny typ pliku!"; } else { $_FILES['plik']['name'] = str_replace("±", "_", $_FILES['plik']['name']); } } echo $_FILES['plik']['name']; ?>

to tylko jest takie testowe, chcialem zobaczyc czy zadziala zamiana "±" na "_", no i nie działa ... na koncu skryptu drukuje się nazwa wskazanego pliku z polskim znakiem. Co tu jest nie tak? Jak wyrzucić polskie znaki z nazwy uploadowanego pliku?



mam sposób na niektóre litery...

zobacz jak Ci sie wy¶wietlaja polskie litery -

echo $_GET['co'];

bla.php?co=± ę ż Ľ ó ł ń ¶

i póĽniej wstaw do zmiany litery wynikowe...

Podejrzewam,że to problem z kodowaniem znaków. Stronę masz w np. utf-8,a plik windows i st±d problem . . .

po zmianie kodowania na koncu kazdej podstrony mam jakies dwa znaczki "Ĭ&raquo;ż" co to jest? :D



Ponieważ Ľle zmieniasz. Ja używam Notepad2 i mi wszystko pięknie konwertuje! A jeżeli chodzi o latin2 to Notatnik SP.
Tak poza tym to polecam Google lub szukajkę

a w jakim kodowaniu zapisać plik żeby poprawnie zamieniała znaki przy urzyciu funkcji:
move_uploaded_file($what['userfile']['tmp_name'], './albums/'.$album.'/'.strtr($tekst, 'ĘÓˇ¦ŁŻ¬ĆŃę󱶳żĽćń ', 'EOASLZZCNeoaslzzcn'))
Użytkownik OGGY_Lwiatko_89 edytował ten post 02 sierpień 2007, 18:49
@OGGY_Lewiatko_89: W takim,jakie masz na całej stronie (a nie wiem jakie to :P ).


W takim,jakie masz na całej stronie
czyli ???

zapisywałem w UTF-8, ISO 8859-2, Windows 1250 i jak mam plik o nazwie "ĘAAÓBBˇCC¦DDŁFFŻGG¬HHŃIIęJJóKK±LL¶MMłNNżOOĽPPćRRńSS.jpg" to zawsze jakie¶ krzaczki s± :/ Jak je usun±ć ??? męcze się z tym już ładnych pare godzin :/

Może spróbuj przez header przekazać kodowanie (oczywiscie przed funkcj±). Powinno pomóc.
BTW Po co się męczyć skoro można własn± nazwę nadać. Czy taka - bez polskich znaków - jest konieczna?
Użytkownik andrzej_aa edytował ten post 02 sierpień 2007, 18:09
wkleiłem wszystko do notatnika i zapisałem w UTF-8, no i efekt taki że zamienia mi nazwę pliku na "zOASzZcCcecaclzzcnz™Ałz…c›c‚cĽcşz‡cZ.jpg" z takiej : "ĘÓˇ¦ŁŻ¬ĆŃę󱶳żĽćń .jpg" ... nie ogarniam już tego :/
Użytkownik OGGY_Lwiatko_89 edytował ten post 02 sierpień 2007, 18:49
A ja chyba ogarniam :)
Spójrz: wysyłasz plik, który ma polskie znaki (windows-1250) do skryptu, który przetwarza je na UTF-8. Więc strtr() nie zwróci zamienionego ci±gu znaków - bo niby jak, skoro jako parametr podałe¶ znaki z Windows-1250 :P
Kumasz? Ja chyba jednak nie potrafie tłumaczyć...

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.