Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP]Jakie kodowanie znaków..?
tofik1778983
post 15.07.2010, 15:27:20
Post #1





Grupa: Zarejestrowani
Postów: 144
Pomógł: 1
Dołączył: 22.11.2007
Skąd: lbn

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


Jakie mam ustawić kodowanie znaków questionmark.gif

Stronę robiłem już dawno i kiedyś ustawiłem charset=windows-1250 i wszystko działało jak trzeba polskie znaczki były..
potem dodałem rss (za pomocą simplepie ) na stronie
-na serwerze lokalnym (WebServ) są polskie znaki w kanałach rss same krzaki, na serwerze w sieci są wszędzie polskie znaki..
- jak przestawię kodowanie na utf-8 krzaki są wszędzie na stronie nie ma ich kanałach rss jest ok. tak samo na serwerze zewnętrznym.

no niby jak używam charset=windows-1250 jest ok..
Przyszedł czas kiedy potrzebuje ustawić kodowanie na utf-8 na całej stronie bo chciałem dodać kilka rzeczy no i bez utf-8 pojawiają się krzaczki których skrypt nie przepuszcza.

czemu jak ustawię na stronie utf-8 wszystkie polskie znaki znikają questionmark.gif
(no poza informacjami w rss albo innymi zasysanymi z zewnątrz)

Jeszcze dodam:
- strona pisana głównie w dreamveawer 8
- kodowanie ustawione jest tylko w głównym index.php który dzięki funkcji switch() zamienia jednego diva na dane z innych plików index.php
- strona nie korzysta z baz danych jest wszystko na plikach txt z nich są czytywane przeróżne texty itd

Myślę że w tym problem ze w plikach txt..
Cytat
UTF i BOM
Z UTF-8 pojawia się jeszcze problem BOM. Windowsowy notatnik potrafi zapisywać pliki TXT wyłącznie z BOM - nie da się tworzyć przy jego pomocy stron www. W przeglądarce będą pojawiać się różnorakie krzaczki. Jedynym wyjściem jest użycie jakiegoś sensownego edytora np. Notepad++ czy środowiska IDE np. NetBeans.


Da się coś z tym zrobić questionmark.gif

Ale z drugiej strony dodałem do pliku php polskie znaczki (test: ążśźćęłó) kodowanie na utf-8 i wyświetliło same krzaczki..

Ten post edytował tofik1778983 15.07.2010, 15:46:07


--------------------
Go to the top of the page
+Quote Post
krzysiej
post 15.07.2010, 15:45:07
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 3
Dołączył: 5.08.2009

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


zmien kodowanie na wtf-8 znaczy na utf-8, uzyj jakiegos edytora i pozmieniaj wszystkie pliki osobno albo ainstaluj netbeans utworz nowy projekt z istniejacych zrodel a podczas tworzenia w kreatorze wybierz kodowanie utf-8
Go to the top of the page
+Quote Post
tofik1778983
post 15.07.2010, 15:50:09
Post #3





Grupa: Zarejestrowani
Postów: 144
Pomógł: 1
Dołączył: 22.11.2007
Skąd: lbn

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


No ale pliki z danymi sa głównie dodawane z formularzy na stronie.. przecież nie będę wchodził na stronę i edytował plików za każdym razem jak ktoś mi coś na nią doda...
nie ma innego wyjścia questionmark.gif
Danych w plikach jest już dość dużo


--------------------
Go to the top of the page
+Quote Post
fixer_33
post 15.07.2010, 15:51:11
Post #4





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 2.02.2010

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


Może nie ustawiłeś kodowania fizycznego w edytorze
Go to the top of the page
+Quote Post
tofik1778983
post 15.07.2010, 15:59:34
Post #5





Grupa: Zarejestrowani
Postów: 144
Pomógł: 1
Dołączył: 22.11.2007
Skąd: lbn

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


W edytorze mam utf-8
problem jest chyba tylko z tym BOM..
Zaraz dokładnie sprawdzę na serwerze jak ustawie utf-8 oraz zmienię jakieś dane w plikach tekstowych..
tymczasem powiedzcie jak zrobić aby dane zapisywane z formularza php do pliku txt nie zawierały tego BOM..
Czy po prostu jak zmienie format zapisanego pliku z *txt na np: nazwa_pliku.xxx (dowolne inne rozszerzenie) questionmark.gif


--------------------
Go to the top of the page
+Quote Post
krzysiej
post 15.07.2010, 16:06:28
Post #6





Grupa: Zarejestrowani
Postów: 25
Pomógł: 3
Dołączył: 5.08.2009

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


http://www.codingforums.com/showthread.php?t=129314
Go to the top of the page
+Quote Post
tofik1778983
post 15.07.2010, 17:01:25
Post #7





Grupa: Zarejestrowani
Postów: 144
Pomógł: 1
Dołączył: 22.11.2007
Skąd: lbn

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


Dzięki krzysiej znalazłem tą funkcje już wcześniej..
Powiem wam że jak przestawiłem kodowanie strony na utf-8 to także dodając dane na stronę przez formularze jest zachowane kodowanie i nie trzeba będzie dodawać tej funkcji..
Jedynie co to muszę zrobić jakiś skrypt co by mi te wszystkie wcześniej utworzone pliki txt z danymi pozamieniał bo ja pomyślę że muszę to wszystko ręcznie edytować to mnie szlak trafia...


--------------------
Go to the top of the page
+Quote Post
krzysiej
post 15.07.2010, 17:06:52
Post #8





Grupa: Zarejestrowani
Postów: 25
Pomógł: 3
Dołączył: 5.08.2009

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


sprawdz moze jescze ten program:
http://pliki.pcworld.pl/pc/programy/0291/Ogonki.97.1.3.html
automatycznie powienien zmienic kodowanie we wskazanych plikach
Go to the top of the page
+Quote Post
tofik1778983
post 15.07.2010, 19:27:24
Post #9





Grupa: Zarejestrowani
Postów: 144
Pomógł: 1
Dołączył: 22.11.2007
Skąd: lbn

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


OO ten program byłby wybawieniem dla mnie lecz niestety mam niebieskie wykrzykniki prze każdym pliku a w logu:

Cytat
nazwa_pliku.txt nie może być przekonwertowany


krzysiej wielkie dzięki a podpowiedź co do programu, wielki ziiiimny browar dla ciebie.
Ostatecznie użyłem programu GZegżółkaXP konwertuje elegancko ;]

No niby pięknie ładnie ale kolejny problem wylazł jak grzyb po deszczu..
Dlaczego jak dodaje cokolwiek przez formularz na lokalnym serwerze co ma polskie krzaki ( test: ążśźćęńłó ) to na serwerze lokalnym (webserv) wyświetla krzaki a na serwerze zewnętrznym jest dobrze (wyświetla z plików txt polskie ogonki)
Czyżby podczas zapisu na lokalnym zapisywało plik jakoś inaczej niż na serwerze questionmark.gif

wpis na lokalnym przez formularz strony wygląda w pliku tak:

Cytat
test2 zmienione rozszerzenie: ä…ĺľĺ›ĺşä‡ĺ‚ăłĺ„ä™


Próbowałem już:
$dane - tu jest tekst jakiś do zapisu w plik txt z polskimi krzakami
  1. $dane = iconv("WINDOWS-1250", "UTF-8", $dane);

brak efektu
  1. $dane = mb_convert_encoding($dane, 'UTF-8', 'WINDOWS-1250');

Cytat
Warning: mb_convert_encoding() [function.mb-convert-encoding]: Illegal character encoding specified in...


sprawdzałem inne kodowanie to zmieniało mi na jakieś inne krzaki a dalej nie mogę tego gó**a zapisać do pliku..

Ten post edytował tofik1778983 15.07.2010, 21:30:38


--------------------
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.07.2025 - 12:02