websign 0 Zgłoś post Napisano Sierpień 31, 2008 Witam Mam bazę na IQ.PL w utf-8 - na stronie na IQ.PL wszystko jest ok. Gdy próbuję się do tej samej bazy dostać z zewnątrz, niestety w żaden sposób nie jestem w stanie wymusić, żeby znaki były zakodowane poprawnie. Do tej pory korzystałem z podobnego rozwiązania, z tym, że strona była w iso-8859-2 (latin2) i wszystko działało bezproblemowo, a przy uruchomieniu nowej strony i decyzji o przejściu na utf-8 niestety jest problem przy połączeniu z bazą z innego komputera. Na IQ.PL w phpmyadmin dla SHOW VARIABLES LIKE 'character_set%'; mam character_set_client latin2 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results latin2 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/local/mysql-5.0.45-linux-x86_64-icc-glibc23/s... a dla podobnej bazy na localhost mam: character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server utf8 character_set_system utf8 character_sets_dir c:\wamp\bin\mysql\mysql5.0.51b\share\charsets\ SET NAMES w php na IQ nie działa i generalnie jak nie kombinuję, tak jak z localhosta łączę się z tą bazą, niestety polskie znaki są niepoprawnie kodowane. Ma ktoś może pomysł co z tym zrobić? Pozdrawiam Udostępnij ten post Link to postu Udostępnij na innych stronach
lazy 33 Zgłoś post Napisano Sierpień 31, 2008 Witam Mam bazę na IQ.PL w utf-8 - na stronie na IQ.PL wszystko jest ok. Gdy próbuję się do tej samej bazy dostać z zewnątrz, niestety w żaden sposób nie jestem w stanie wymusić, żeby znaki były zakodowane poprawnie. Do tej pory korzystałem z podobnego rozwiązania, z tym, że strona była w iso-8859-2 (latin2) i wszystko działało bezproblemowo, a przy uruchomieniu nowej strony i decyzji o przejściu na utf-8 niestety jest problem przy połączeniu z bazą z innego komputera. Na IQ.PL w phpmyadmin dla SHOW VARIABLES LIKE 'character_set%'; mam character_set_client latin2 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results latin2 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/local/mysql-5.0.45-linux-x86_64-icc-glibc23/s... a dla podobnej bazy na localhost mam: character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server utf8 character_set_system utf8 character_sets_dir c:\wamp\bin\mysql\mysql5.0.51b\share\charsets\ SET NAMES w php na IQ nie działa i generalnie jak nie kombinuję, tak jak z localhosta łączę się z tą bazą, niestety polskie znaki są niepoprawnie kodowane. Ma ktoś może pomysł co z tym zrobić? sprobój set names latin2; na localhoscie, masz prawdopodobnie źle zakodowane znaki w bazie, ustawiajac set names tak jak na phpmyadminie powinienes dostac poprawe poprawne znaki w utf-8 trzeba pamietac o tym ze ustawienie kodowania bazy nie wpływa na kodowanie z jakim bedzie sie odbywac komunikacja z mysql i pewnie wrzuciles utf8 do bazy mimo ze polaczenie bylo ustawione na latin2 -- Lazy Udostępnij ten post Link to postu Udostępnij na innych stronach
Noone 19 Zgłoś post Napisano Sierpień 31, 2008 W jaki sposób sprawdzasz że nie działa? Z czego pochodzą dane i w jakim formacie? http://tworzenie-stron-www.org/artykuly/3/...na_stronach_www Udostępnij ten post Link to postu Udostępnij na innych stronach
websign 0 Zgłoś post Napisano Sierpień 31, 2008 sprobój set names latin2; na localhoscie, Dzięki, rzeczywiście działa, że też sam na to nie wpadłem masz prawdopodobnie źle zakodowane znaki w bazie, ustawiajac set names tak jak na phpmyadminie powinienes dostac poprawe poprawne znaki w utf-8 trzeba pamietac o tym ze ustawienie kodowania bazy nie wpływa na kodowanie z jakim bedzie sie odbywac komunikacja z mysql i pewnie wrzuciles utf8 do bazy mimo ze polaczenie bylo ustawione na latin2 No dobrze, ale w takim razie jak mogę wymusić połączenie przed wgraniem bazy? Importowałem przez phpmyadmina przy ustawieniach: System kodowania znaków dla MySQL: UTF-8 Unicode (utf8) System porównań dla połączenia MySQL: utf8_general_ci oraz polski (utf-8). Czy powinienem w phpmyadminie wykonać jeszcze jakąś komendę, żeby w takiej sytuacji "poprawnie" zaimportować dane ("poprawnie", bo teraz dane też się wydają poprawne po wejściu przez phpmyadmina - z polskimi znakami nie ma problemów)? Udostępnij ten post Link to postu Udostępnij na innych stronach
lazy 33 Zgłoś post Napisano Sierpień 31, 2008 Dzięki, rzeczywiście działa, że też sam na to nie wpadłem No dobrze, ale w takim razie jak mogę wymusić połączenie przed wgraniem bazy? Importowałem przez phpmyadmina przy ustawieniach: System kodowania znaków dla MySQL: UTF-8 Unicode (utf8) System porównań dla połączenia MySQL: utf8_general_ci oraz polski (utf-8). Czy powinienem w phpmyadminie wykonać jeszcze jakąś komendę, żeby w takiej sytuacji "poprawnie" zaimportować dane ("poprawnie", bo teraz dane też się wydają poprawne po wejściu przez phpmyadmina - z polskimi znakami nie ma problemów)? to sa tylko kodowania domyslne, i tak set names w zrzucie ustawi sobie co chce wazna jest tylko 1 rzecz 1) na poczatku zrzutu za pomoca set names musi byc oznaczone kodowanie pliku w twoim przypadku zrob tak 1) zrzut z set names latin2, by uzyskac poprawny tekst utf8 2) zamien set names lain2 na set names utf8 i zaimportuj ponownie, najlepiej do jakies 2giej bazy 3) pododawaj wszedzie gdzie chcesz uzywac utf8 set names utf8 zaraz po nawiazaniu polaczenia -- Lazy Udostępnij ten post Link to postu Udostępnij na innych stronach
websign 0 Zgłoś post Napisano Wrzesień 1, 2008 Nie próbowałem sam wykonać, zrobił to dla mnie ktoś inny i ponoć baza jest teraz "super utf8" tzn. wszystko poprawnie zakodowane. Z tym tylko, że przy poprawnie zakodowanej bazie w utf8 nie da się jej teraz w ogóle przeglądać w phpmyadmin, bo jak w phpmyadmin daję SHOW VARIABLES LIKE 'character_set%'; to mi się nadal pokazuje: character_set_client latin2 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results latin2 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/local/mysql-5.0.45-linux-x86_64-icc-glibc23/s... a korzystam z phpmyadmina ogólnie dostępnego na hostingu, więc tam sobie już set names nigdzie w kodzie php dodać nie mogę... Udostępnij ten post Link to postu Udostępnij na innych stronach
lazy 33 Zgłoś post Napisano Wrzesień 1, 2008 Nie próbowałem sam wykonać, zrobił to dla mnie ktoś inny i ponoć baza jest teraz "super utf8" tzn. wszystko poprawnie zakodowane. Z tym tylko, że przy poprawnie zakodowanej bazie w utf8 nie da się jej teraz w ogóle przeglądać w phpmyadmin, bo jak w phpmyadmin daję SHOW VARIABLES LIKE 'character_set%'; to mi się nadal pokazuje: a korzystam z phpmyadmina ogólnie dostępnego na hostingu, więc tam sobie już set names nigdzie w kodzie php dodać nie mogę... phpmyadmin chyba ma problemy z ustawianiem odpowiedniego kodowania polaczenia, najprosciej ustaw kodowanie strony (jezyk) na latin2 czyli tak jak jest ustawione kodowanie polaczenia, i edytuj dane w latin2, i tak wszystko zostanie przekodowane na utf8 -- lazy Udostępnij ten post Link to postu Udostępnij na innych stronach