Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Closed TopicStart new topic
> [PHP]problem z kodowaniem bazy danych
El Nino9
post 3.02.2012, 13:22:53
Post #1





Grupa: Zarejestrowani
Postów: 87
Pomógł: 3
Dołączył: 3.04.2011

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


witam, funkcja urldecode zwraca mi wyraz z polskimi znakami
kodowanie strony mam na utf-8, bo inaczej wyraz ten zwracany jest z krzaczkami, co pewnie związane jest z funkcją urldecode
problem pojawia się przy dodawaniu rekordu do bazy, bo dodaje z krzaczkami
próbowałem już kilku kodowań w bazie, próbowałem też
  1. mysql_query('SET tabela utf-8');

ale nie pomaga

dodam że korzystam z xampp, jakieś rady?
pozdro
Go to the top of the page
+Quote Post
prowseed
post 3.02.2012, 14:09:06
Post #2





Grupa: Zarejestrowani
Postów: 433
Pomógł: 64
Dołączył: 29.01.2011
Skąd: Warszawa

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


http://php.pl/phppl/Wortal/Artykuly/Pomysl...e-znaki-a-MySQL

i musi dzialac


--------------------
Go to the top of the page
+Quote Post
El Nino9
post 3.02.2012, 16:37:26
Post #3





Grupa: Zarejestrowani
Postów: 87
Pomógł: 3
Dołączył: 3.04.2011

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


widziałem ten tekst ale niestety wskazówki z niego nic mi nie pomogły, no chyba że źle je zastosowałem. umieszczam kod


  1. echo '<!DOCTYPE html
  2. PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <meta name="Description" content="Tu wpisz opis zawartości strony" />
  8. <meta name="Keywords" content="Tu wpisz wyrazy kluczowe rozdzielone przecinkami" />
  9. <title>Tu wpisz tytuł strony</title>
  10. </head> ';
  11. echo $test = 'ssśśąą';
  12. $string = 'wioska+barbarzy%C5%84ska';
  13. echo $string_pop = urldecode($string);
  14. $connect = mysql_connect('localhost', 'root');
  15. $baza = mysql_select_db('plemiona');
  16.  
  17. $zapytanie = mysql_query("ALTER TABLE villages DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci");
  18. mysql_query("INSERT INTO villages SET name='$string_pop'")
  19. or die ("MySQL ERROR: ".mysql_error());
  20.  
  21. echo '</body></html>';


próbowałem też tak:

  1. $hostname = 'localhost';
  2.  
  3. /*** mysql username ***/
  4. $username = 'root';
  5.  
  6.  
  7.  
  8.  
  9. try {
  10. $dbh = new PDO("mysql:host=$hostname;dbname=plemiona", $username);
  11.  
  12. echo 'Connected to database<br />';
  13.  
  14. $dbh -> query ('SET NAMES utf8');
  15. $dbh -> query ('SET CHARACTER_SET utf8_unicode_ci');
  16. $count = $dbh->exec("INSERT INTO villages SET name='sąąą'");
  17.  
  18. echo $count;
  19.  
  20. $dbh = null ;
  21. }
  22. catch(PDOException $e)
  23. {
  24. echo $e->getMessage();
  25. }


ale efekt jest ten sam, w bazie nadal są krzaczki
Go to the top of the page
+Quote Post
wookieb
post 3.02.2012, 16:41:16
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Temat: MYSQL Polskie znaki
Zamykam


--------------------
Go to the top of the page
+Quote Post

Closed 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: 12.06.2025 - 12:41