![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
potrzebuje pomocy bo nie dam rady z tym problemem. Nie kumam czemu to nie chce działać. DOSTAJE JUŻ NERWICY KOLEJNY DZIEŃ ~~~~~~~~~~ Problem: brak polskich znaków przy wyciąganiu z bazy danych, po za tym polskie znaki są gdy wpisze je sam w plik .php EFEKT: zamiast : ą, ż, ź, ć, ń, ó, ł, ę, ś mam : (IMG:http://img686.imageshack.us/img686/803/49973212.gif) Przy zalogowaniu się do mysql i zrobieniu selecta na bazie polskie znaki w tabeli są widoczne ~~~~~~~~~~ Technologie: Linux version 2.6.26-2-686 (Debian 2.6.26-19lenny1) MySQL: 5.0.51a-24+lenny2 (Debian) Apache2 PHP 5.0 ~~~~~~~~~~ Zapis plików: Notepad++ w UTF8 ~~~~~~~~~~ skrypt na utworzenie tabeli: user | CREATE TABLE `user` ( `user_id` int(11) unsigned NOT NULL auto_increment, `rec_answer` varchar(45) default NULL, PRIMARY KEY (`user_id`), UNIQUE KEY `unique_login` (`login`) ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 PACK_KEYS=0 ~~~~~~~~~~ Co zrobiłem: <?php header("Content-Type: text/html; charset=UTF-8"); ?> // połączenie do bazy danych: $db=mysql_connect($serwer,$login,$haslo); mysql_query("SET NAMES 'utf8'",$db); mysql_query("SET collation_server=utf8_general_ci",$db); mysql_select_db($baza,$db); // pobieranie danych : $wynik = mysql_query("SELECT rec_answer from user"); // wyświetlanie danych while($rekord = mysql_fetch_array($wynik)) { echo "<tr><td>".$rekord['rec_answer']."</td>"; echo "</tr>"; ~~~~~~~~~~ ZMIENNE Z MYSQL (wyświetlone już z przeglądarki w tym samym pliku, pobrane z bazy, SHOW VARIABLES): 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 - /usr/share/mysql/charsets/ collation_connection - utf8_general_ci collation_database - utf8_general_ci collation_server - utf8_general_ci ~~~~~~~~~~ PHPMYADMIN ustawione: System kodowania znaków dla MySQL: UTF-8 Unicode (utf8) System porównań dla połączenia MySQL: utf8_general_ci Pozdrawiam Flaszka |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 1 Dołączył: 17.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
A kodowanie (sekcja head) w dokumencie HTML ?
|
|
|
![]()
Post
#3
|
|
Grupa: Administratorzy Postów: 1 552 Pomógł: 211 Dołączył: 7.07.2009 Skąd: NJ ![]() |
Nie bardzo rozumiem co Ci nie działa. Znaki nie wyświetlają się przy pobieraniu danych z bazy czy w ogóle w pliku? Jeżeli w ogóle pliku to stwórz nowy dokument w notepad++ z już ustawionym kodowaniem UTF i dopiero wtedy wklej tam zawartość. W innym przypadku być może dane w bazie są źle zakodowane.
//BTW w przedszkolu jest milion problemów i rozwiązań dotyczących kodowania. Ten post edytował Daiquiri 30.11.2009, 21:31:52 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Nie bardzo rozumiem co Ci nie działa. Znaki nie wyświetlają się przy pobieraniu danych z bazy czy w ogóle w pliku? Jeżeli w ogóle pliku to stwórz nowy dokument w notepad++ z już ustawionym kodowaniem UTF i dopiero wtedy wklej tam zawartość. W innym przypadku być może dane w bazie są źle zakodowane. //BTW w przedszkolu jest milion problemów i rozwiązań dotyczących kodowania. Przy pobieraniu z bazy. Na innym forum dał mi ktoś dobry trop, którym poszedłem i okazało się, że wina leży w sposoie zasilania bazy danych. Robiłem inserty poprzez konsole mysql przez co wchodziły dane w ISO-8859-2. Przy dodawaniu rekordów z poziomu PHPMyAdmin jest w porządku. PS. W przedszkolu jest może i milion rozwiazań, ale żadne nie poruszało problemu opisanego przeze mnie. Dziękuję za zainteresowanie się tematem. Oficjalnie sprawa zamknięta (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
To nieoficjalnie: nie rób insertów przez konsolę mysql, ale przez phpMyAdmin i/lub poprzez formularz na stronie www z kodowaniem utf-8
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 15:09 |