Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z ogonkami...
Forum PHP.pl > Forum > Bazy danych > MySQL
arturrrr
Czesc,

na poczatku zaznacze ze archiwum czytalem i to dokladnie.

Moj problem:
Mam tabelke z kolumna na imie i nazwisko. I tak wszystko jest dobrze dopoki
nie pojawiaja sie polskie znaki. Poprzez phpMyAdmin wszystko widac dobrze.
Problem z jednym ze skryptow.
Pierwszy skrypt polega na wpisaniu na stronie www imienia i wtedy wyswietla
cos tam. Poradzilem sobie stosujac:
mysql_query("SET NAMES latin2;");
zatem w bazie spokojnie sprawdza polskie znaczki.

Drugi skrypt: wpisuje date i ma mi pokazac imiona i nazwiska. Gdy ogonkow
nie ma to all jest ok. Gdy sa ogonki, to wyswietla, np.
Mieczys?aw
Jak sobie z tym poradzic?

Dzieki za pomoc
Pozdrawiam
SongoQ
A jakie kodowanie masz na www i jakie ma apache ustawione?
arturrrr
Na www jest typowe ISO, ale nawet zmiana na inne nic nie daje:( Co do bazy to tak:

System porównań dla połączenia MySQL: latin2_general_ci

a w tabeli pola sa:
System porównań: latin2_general_ci

Dodam takze jeszcze raz. Jesli w formularzu na stronie pisze imie do wyszukania, np. Mieczysław to wyszukuje dokladnie. Stosuje w skrypcie:
mysql_query("SET NAMES latin2;");
Gdy natomiast odwrotnie, po dacie szukam, to na stronie wywala zamiast ł znak zapytania.

Wiem ze to z kodowaniem. Niestety nie jestem na tyle dobry by to rozgryzc:(


----------------------------------------
Jesli to pomoze, to rekordy byly dodawane recznie w phpMyAdmin.
SongoQ
Ale zawsze te same dane wyswietlasz i tak samo nie wazne jaki jest warunek? Bo jesli tak to nie powinno Ci krzaczyc
arturrrr
Tak, przy polskich ogonkach zawsze mi krzaczy:(sad.gif W sumie to juz nawet zaczynam myslec nad przepisaniem tabeli albo nad utworzeniem nowej.
Moze ktos poda przykladowa strukture to utworze nowa tabele i zobacze czy bedzie mi dzialac.
SongoQ
Cytat
Moze ktos poda przykladowa strukture to utworze nowa tabele i zobacze czy bedzie mi dzialac.

Struktura nie ma nic do tego, nie ma w mysqlu mozliwosc przypisac indywidualnego kodowania do danej tabeli, no chyba ze wprowadzili to w ostatniej wersji ale niestety nie slyszalem o tym.
arturrrr
To co ja mam w takim razie zrobic??
SongoQ
  1. CREATE TABLE ............
arturrrr
Tym postem raczej mi nie pomogles.
brachu
hmmmm ciekawa sprawa.... ja mam system porownan ustawiony na latin1_swedish_ci i mi wyswietla ok.... ale jeszcze jedna sprawa - bo tak.... musisz miec ustawione to samo kodowanie na stronie co jest ustawione na serwerze i jeszcze zapisz sobie pliki w tym samym kodowaniu i zobacz co bedzie winksmiley.jpg ewentualnie zmien ten system porownan na latin1_swedish_ci
arturrrr
Dzieki brachu zrobie tak jak mowisz, tylko ze w nocy bo teraz za bardzo czasu nie mam..
squid
Cytat(SongoQ @ 2005-07-11 09:19:02)
Cytat
Moze ktos poda przykladowa strukture to utworze nowa tabele i zobacze czy bedzie mi dzialac.

Struktura nie ma nic do tego, nie ma w mysqlu mozliwosc przypisac indywidualnego kodowania do danej tabeli, no chyba ze wprowadzili to w ostatniej wersji ale niestety nie slyszalem o tym.

oj chyba jest, po definicji tabeli za nawiasem ale przed srednikiem mozna wpisac DEFAULT CHARSET=latin2;
po za tym phpMyAdmin umozliwa zmiane strony kodowej tabeli w linku operacje
SongoQ
Cytat
oj chyba jest, po definicji tabeli za nawiasem ale przed srednikiem mozna wpisac DEFAULT CHARSET=latin2;

Mozesz podac gdzie to znalazles? Juz myslalem ze MySQL nie posiada czegos takiego.

Cytat
po za tym phpMyAdmin umozliwa zmiane strony kodowej tabeli w linku operacje

To jest tylko ustawienie kodowania wpisywania tekstu.
brachu
kurde wlasnie wystapil u mnie podobnny problem.....
ale nie zmianialem kodowania w calej tabeli - zmienilem tylko system porownan na utf8_polish_ci i ustawienie kodowania na stronie na utf-8 i pliki zapisałem pod utf-8 i dziala dobrze winksmiley.jpg tylko jeszcze jedna rzecz : jezeli bedziesz wprowadzal dane z phpmyadmina to tez ustaw sobie kodowanie na stronie na utf-8 i bedzie gites winksmiley.jpg

edit:
a jezeli chcesz uzywac kodowanie na stronie iso-8859-2 to system porownian ustaw na ucs2_polish_ci winksmiley.jpg

pozdrawiam
3miel
Cytat
a jezeli chcesz uzywac kodowanie na stronie iso-8859-2 to system porownian ustaw na ucs2_polish_ci 

moje kodowanie:
Kod
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />

ustawiłem:
Kod
zapytanie SQL:
ALTER TABLE `filmoteka` DEFAULT CHARACTER SET ucs2 COLLATE ucs2_polish_ci

i dalej mam znaki zapytania sad.gif co jeszce musze zrobić?
SongoQ
Tak sie zastanawiam, bo moze nie wystarczy nadanie kodowania dla tabeli, moze wczesniejsze dane sa w zlym kodowaniu? i trzeba jest przekonwertowac.
3miel
Jak je przekonwertować?

Bo w PHPmyAdminie tez zle wyswietla ALE jak zmainiłem recznie '?' -> 'ą', to na stronce dalej jest '?'. Co mam w takim wypadku zrobić?
SongoQ
Sprobuj zrzucić do SQL'a i wtedy konwertować nawet na zasadzie replace i potem do bazki.
3miel
Cytat(SongoQ @ 2005-07-14 14:05:51)
Sprobuj zrzucić do SQL'a i wtedy konwertować nawet na zasadzie replace i potem do bazki.

Tylko jak to zrobić? nie znam sie na tym sad.gif.
squid
Cytat(SongoQ @ 2005-07-13 22:59:46)
Cytat
oj chyba jest, po definicji tabeli za nawiasem ale przed srednikiem mozna wpisac DEFAULT CHARSET=latin2;

Mozesz podac gdzie to znalazles? Juz myslalem ze MySQL nie posiada czegos takiego.

W manulau. Jest chyba od wersji 4.1.x latwo zauwazyc jak masz nowsza wercje PHPmyAdmin to przy zrzucie bazy dorzuca taki kawalek kodu, ktory z drugiej strony moze powodowac bledy skladniowe w starszych wersjach serwera.

Wracajac do problemu, trapi mnie to samo. Probowalem juz latin2, iso, pl-uft-8 dla systemow porownani, kodowania stron, kodowania tabeli (ver 4.1), zmienialem nawet my.ini zeby tam ustawic domyslne znaczki, kombinowalem z apachem i nic. Tea problem nie rozwala choc na serwerze produkcyjnym mam MySQL 4.0.x i tak jest all ok. U mnie tez problemy zaczely sie po upgreadzie do 4.1. Nie wiem juz co mam z tym zrobic, jak na cos wpadniecie to dajcie znac
trocu
Czy problem zostal juz rozwiazany, bardzo mi zalezy na odpowiedzi - mam ten sam klopot ... masakra
Pzdr.
squid
jesli o mnie chodzi to dalej mam problem tyle ze tylko na domowym serwerze a on sluzy glownie do testow. na serwerach gdzie moja praca ma dzialac administratorom udalo sie rozwiazac ten problem ale nie wiem jak.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.