Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql] Kodowanie znaków w tabeli ?
Forum PHP.pl > Forum > Przedszkole
kkuubbaa88
witam

mam komentator na stronie. strona jest kodowana charset=windows-1250.

jakie kodowanie powinno byc w tabeli, aby wychodziły polskie znaki ?
Moli
  1. SET names latin2
kkuubbaa88
ojc cos chyba nie bardzo te latin2. ustawilem to w tabeli i nadal nie widac polskich znakow.
krisX
Witam
Takie zapytanie powinieneś wykonać przed pobraniem danych z bazy,
w bazie możesz ustawić latin2_general_ci
kkuubbaa88
ustawiłem. zauważyłem, ze juz mi do tabeli wpisuje takie coś:

Komentarz= ąęśćźżół
tabela= ¹ê?æ?¿ó³

to chyba nie dobrze ? jak zrobic, aby wpisac te znaki polskie ?

wpisuje dane do tabeli:
  1. <?php
  2. $tresc = addslashes(nl2br(htmlentities($_POST['tresc'])));
  3. $imie = addslashes($_POST['imie']);
  4. $adresip = $_SERVER['REMOTE_ADDR'];
  5. $zapytanie = "INSERT INTO bwin (imie, tresc, data, adresip) VALUES ('$imie', '$tresc', now(), '$adresip');";
  6. $wynik = mysql_query ($zapytanie);
  7. ?>



a pobieram
  1. <?php
  2. $wynik = mysql_query ("SELECT * FROM bwin WHERE zatwierdz=0 order by numer desc;"); 
  3. print"<UL>";
  4. while ($rekord = mysql_fetch_array ($wynik, MYSQL_NUM)) { 
  5. print "<LI>".$rekord[3] = stripslashes($rekord[2]).", <B> ".$rekord[2] = stripslashes($rekord[1])."</B>, ".$rekord[4]."</LI>"; 
  6. }
  7. ?>
drPayton
latin2 to nie windowsowe kodowanie tylko ISO-8859-2. Spróbuj cp1250, a zdecydowanie najlepiej będzie jak zapomnisz o istnieniu windows-1250. To zawsze powodowało i będzie powodować masę problemów. Korzystaj z utf8 ewentualnie właśnie iso
kkuubbaa88
ale gdy wsadze na strone inne kodowanie niz windows to nie mam polskich znakow... bynajmniej nie na firefox, a gdy mam tego windows to mam wszedzie polskie znaki.
drPayton
Jesteś pewien, że wszędzie? A na MACu, a na Unixowych systemach? Już nie zawsze...
Musisz ustawić odpowiednie kodowanie dla strony, najlepiej tak:
  1. <?php
  2. header('Content-Type: text/html; charset=UTF-8');
  3. ?>

Jeśli zdecydujesz się na UTF, albo
  1. <?php
  2. header('Content-Type: text/html; charset=ISO-8859-2');
  3. ?>

Jeśli wybierzesz iso.
Taki fragment zanim cokolwiek na ekranie zostanie wyświetlone. Nie musisz już pisać tagu meta odpowiedzialnego za kodowanie.
Pamiętaj również, że pisząc skrypt (w edytorze) musisz zapisać go z odpowiednim kodowaniem. A jeżeli nie masz edytora który je obsługuję, skorzystaj z programu Gżegżółka
kkuubbaa88
no i tak jak mówiłem. dałem to iso, ale nie mam na stronie wyświetlanych ani ś ni ź. co z tym zrobić ?

w stronie glownej phpmyadmin ustawilem glowne kodowanie na - utf8_polish_ci
w tabeli w polach również ustawiłem - utf8_polish_ci
to jednak samo nic nie dało. trzeba cos zmienic w kodzie ? cos dodac ? jak to powinno wygladac, aby dzialalo ?
drPayton
Czy ja po chińsku napisałem?
kkuubbaa88
wsadziłem tak jak mówiłeś ten kod, ale nadal brak polskich znakow... gdybym mial to przeciez bym nie pisal.
marcinlenkowski
a nie da rady ustawić UTF-8 albo iso-8859-2 to lepsze tongue.gif
dadexix
Kod
wsadziłem tak jak mówiłeś ten kod, ale nadal brak polskich znakow... gdybym mial to przeciez bym nie pisal.

Cytat
Pamiętaj również, że pisząc skrypt (w edytorze) musisz zapisać go z odpowiednim kodowaniem. A jeżeli nie masz edytora który je obsługuję, skorzystaj z programu Gżegżółka



rozumiesz?
Skrypt jest napisany w WINDOWS-1250 a przeglądarka czyta go w ISO... więc musisz przepisać polskie znaki/p[rzekonwertować gżegżułką.... jeszcze jest jeden sposób na polskie znaki - skyrptem net2ftp edytujesz plik i zapisujesz... skrypt ten sam przekonwertuje na znak HTML'owy.... czyli z ź na &#xYY;(gdzie YY to liczba - nie pamiętam jaka liczba do czego(-smile.gif
drPayton
@kkuubbaa88:
Gwarantuję Ci, że jeśli zrobisz to co napisałem (+ w bazie nie będziesz miał zapisanych krzaków), to będzie wszystko ok.
kkuubbaa88
okej smile.gif tylko nie wiem co dokladnie trzeba zrobić jak mowicie, ze trzeba skrypt napisac w odpowiednim kodowaniem. bo w tabeli zmienilem kodowanie i na stronie. teraz nie mam polskich znakow. i jak ustawic to kodowanie dla skryptow ?

questionmark.gif
krzysiekk
w edytorze np edit++ podczas zapisu dajesz zapisz jako i ustawiasz kodowanie na UTF-8 i po wszystkim
dasz rade sluchaj DrPaytona bo dokladnie ci napisal co masz zrobic
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.