Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] Kodowanie znaków w tabeli ?
kkuubbaa88
post 24.11.2007, 14:33:11
Post #1





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


witam

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

jakie kodowanie powinno byc w tabeli, aby wychodziły polskie znaki ?
Go to the top of the page
+Quote Post
Moli
post 24.11.2007, 14:37:48
Post #2





Grupa: Zarejestrowani
Postów: 662
Pomógł: 45
Dołączył: 26.03.2007
Skąd: Warszawa

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


  1. SET names latin2
Go to the top of the page
+Quote Post
kkuubbaa88
post 24.11.2007, 15:12:26
Post #3





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


ojc cos chyba nie bardzo te latin2. ustawilem to w tabeli i nadal nie widac polskich znakow.
Go to the top of the page
+Quote Post
krisX
post 24.11.2007, 15:20:25
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 14.11.2005

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


Witam
Takie zapytanie powinieneś wykonać przed pobraniem danych z bazy,
w bazie możesz ustawić latin2_general_ci
Go to the top of the page
+Quote Post
kkuubbaa88
post 24.11.2007, 15:50:31
Post #5





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


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. ?>


Ten post edytował kkuubbaa88 24.11.2007, 15:51:05
Go to the top of the page
+Quote Post
drPayton
post 24.11.2007, 16:49:22
Post #6





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


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
Go to the top of the page
+Quote Post
kkuubbaa88
post 24.11.2007, 16:51:59
Post #7





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


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.
Go to the top of the page
+Quote Post
drPayton
post 24.11.2007, 16:59:00
Post #8





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


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

Ten post edytował drPayton 25.11.2007, 07:23:02
Go to the top of the page
+Quote Post
kkuubbaa88
post 25.11.2007, 01:11:15
Post #9





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


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 ?
Go to the top of the page
+Quote Post
drPayton
post 25.11.2007, 07:23:27
Post #10





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


Czy ja po chińsku napisałem?
Go to the top of the page
+Quote Post
kkuubbaa88
post 25.11.2007, 10:39:24
Post #11





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


wsadziłem tak jak mówiłeś ten kod, ale nadal brak polskich znakow... gdybym mial to przeciez bym nie pisal.
Go to the top of the page
+Quote Post
marcinlenkowski
post 25.11.2007, 10:46:06
Post #12





Grupa: Zarejestrowani
Postów: 64
Pomógł: 1
Dołączył: 2.01.2007

Ostrzeżenie: (20%)
X----


a nie da rady ustawić UTF-8 albo iso-8859-2 to lepsze tongue.gif
Go to the top of the page
+Quote Post
dadexix
post 25.11.2007, 11:52:32
Post #13





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

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


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


--------------------
"Na przykład zmiennej $jestem_najlepszy przypisujemy wartość logiczną TRUE"
Ja: użyj funkcji[...]
Grins: mów normalnie do mnie a nie po polsku
Ja: normalnie to znaczy jak?
Grins: No w PHP... inaczej mój parser ledwo kuma:)
Go to the top of the page
+Quote Post
drPayton
post 25.11.2007, 13:25:32
Post #14





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


@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.
Go to the top of the page
+Quote Post
kkuubbaa88
post 25.11.2007, 21:12:05
Post #15





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

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


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
Go to the top of the page
+Quote Post
krzysiekk
post 25.11.2007, 21:28:45
Post #16





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 13.03.2006
Skąd: Jaworze

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


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
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: 24.07.2025 - 22:56