Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> polskie znaki w nazwach plików
a79rtur
post 20.07.2004, 21:43:49
Post #1





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

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


czesc
wrzucam na konto z obsluga php pliki rozne. mam skrypt php ktory tworzy strone html z linkami do plikow i katalogow. niestety nie da sie sciagac tych ktore zawieraja w nazwie polskie litery, pisze ze nie ma takiego pliku. co moze byc tego przyczyną ?
skrypt wyglada w skrócie tak
  1. <?php
  2.  
  3. ......
  4. $katalog='.';
  5. $wsk_katalogu=opendir($katalog);
  6.  
  7. while(false !== ($nazwa_pliku=readdir($wsk_katalogu))) 
  8. {
  9.  
  10. if(($nazwa_pliku!='.') and ($nazwa_pliku!='..') and (strstr($nazwa_pliku, '.')!='.php'))
  11. echo '<a href=\"'.$nazwa_pliku.'\">'.$nazwa_pliku.'</a><br />';
  12. }
  13.  
  14. closedir($wsk_katalogu);
  15. ....
  16. ...
  17.  
  18. ?>


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
borec
post 21.07.2004, 00:14:45
Post #2





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

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


zamieniaj polskie znaki, np. ś -> s itd, unikniesz klopotow


--------------------
Gentoo Linux 64bit / PHP 5.2 / MySQL 5.1
-> Administracja serwerami Linux i FreeBSD
Go to the top of the page
+Quote Post
a79rtur
post 21.07.2004, 14:09:47
Post #3





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

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


jakoś mnie to rozwiazanie nie satysfakcjonuje smile.gif . naprawde nie można nic z tym zrobić ?


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
Dabroz
post 21.07.2004, 14:12:58
Post #4





Grupa: Zarejestrowani
Postów: 286
Pomógł: 0
Dołączył: 1.11.2003
Skąd: Poland, Płock

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


  1. <?php
  2.  
  3. ......
  4. $katalog='.';
  5. $wsk_katalogu=opendir($katalog);
  6.  
  7. while(false !== ($nazwa_pliku=readdir($wsk_katalogu))) 
  8. {
  9.  
  10. if(($nazwa_pliku!='.') and ($nazwa_pliku!='..') and (strstr($nazwa_pliku, '.')!='.php'))
  11. echo '<a href=\"'.urlencode($nazwa_pliku).'\">'.$nazwa_pliku.'</a><br />';
  12. }
  13.  
  14. closedir($wsk_katalogu);
  15. ....
  16. ...
  17.  
  18. ?>


Ale raczej nie uzywaj PL liter w nazwach plikow...


--------------------
Go to the top of the page
+Quote Post
borovsky
post 14.08.2008, 07:44:44
Post #5





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 1.09.2007

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


���깜�� - to są odpowiedniki żółćęąśźń przy odczycie nazw z katalogów

pytanie, czy te znaki zawsze będą takie same, ew, czy zawsze takie same będą na tym samym serwerze, możnaby wtedy stosować zamianę tych krzaków na ich ziemskie odpowiedniki smile.gif
ps. nie wiem czy w ogóle te krzaczki dobrze się na waszych ekranach wyświetlą

edit// widze teraz ze nawet ilosc znakow se nie zgadza

słuchajcie, problem jest taki, że klient wrzuca przez FTP pliki z lokalnej galerii i upiera się, by uwzględniać polskie znaki w nazwach
może inny jezyk niż PHP? proszę o pomoc

Ten post edytował borovsky 14.08.2008, 07:51:37
Go to the top of the page
+Quote Post
ucho
post 14.08.2008, 08:28:10
Post #6





Grupa: Zarejestrowani
Postów: 300
Pomógł: 32
Dołączył: 31.07.2006

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


Wytłumacz mu żę standard definiujący adresy URL/URI nie przewiduje narodowych znaczków. Problem jest choćby taki, że przeglądarka nie wie czy w zapytaniu do serwera ma zakodować pliterki w adresie jako iso czy utf - no bo niby skąd ? Nawet jak we wszystkich adresach zrobisz urlencode to znajdą się przeglądarki (niedużo, ale zawsze) które nie dadzą rady ich otworzyć.
Najprostsze rozwiązanie poza "polskawymi literkami" to modrewrite i nazwy w stylu "32,żółtyobrazek.jpg" - nie ważne czy przeglądarka poradzi sobie z polskimi literkami bo wyślesz obrazek na podstawie identyfikatora smile.gif
Go to the top of the page
+Quote Post
borovsky
post 14.08.2008, 09:36:12
Post #7





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 1.09.2007

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


moge zaproponować jedynie forme: _z_o_l_c oraz ja_x_n ale naprawdę nie wiem czy oni chcą zmieniać nazwy każdego pliku. nie chcą też panelu administracyjnego.
Go to the top of the page
+Quote Post
calebos
post 14.08.2008, 10:07:36
Post #8





Grupa: Zarejestrowani
Postów: 104
Pomógł: 3
Dołączył: 22.02.2008

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


Zastosuj urlencode i zapisz go tak potem jak uzywasz to odkodujesz.
Go to the top of the page
+Quote Post
borovsky
post 14.08.2008, 11:31:46
Post #9





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 1.09.2007

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


urlencode nic nie zmienia a znaczki nadal krzaczki
pytam się czy może ktoś zarzucić listingiem z odczytem katalogu + pl chars?

Ten post edytował borovsky 14.08.2008, 11:32:10
Go to the top of the page
+Quote Post
calebos
post 14.08.2008, 13:04:22
Post #10





Grupa: Zarejestrowani
Postów: 104
Pomógł: 3
Dołączył: 22.02.2008

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


Nie rozumiem skoro dziala przy przekazywaniu przez URL to dlaczego mialby nie dzialac w tym przypadku ?
Go to the top of the page
+Quote Post
golaod
post 14.08.2008, 13:09:16
Post #11





Grupa: Zarejestrowani
Postów: 419
Pomógł: 42
Dołączył: 12.08.2008
Skąd: Wrocław

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


Jak tak bardzo Ci potrzebne te polskie litery to w url zamieniaj je na encje & #321; itd a potem z powrotem na polskie znaki.

Ten post edytował golaod 14.08.2008, 13:10:07
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 Wersja Lo-Fi Aktualny czas: 7.06.2025 - 11:53