Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Problem z kodowaniem
lordmonkey
post
Post #1





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 2.02.2009

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


witam,
mam pewien problem z kodowaniem na "stronie". Zapisuję w MySQL w tabeli słowa po angielsku i po japońsku i wszystko się elegancko wyświetla w PHPMyAdmin :
(IMG:http://img19.imageshack.us/img19/7663/japlk.png)
ale jak już chcę to wypisać skryptem PHP
  1. <?php
  2. $con = mysql_connect("localhost","root","haslo");
  3. if (!$con)
  4. {
  5. die('Could not connect: ' . mysql_error());
  6. }
  7.  
  8. mysql_select_db("dictionary", $con);
  9.  
  10. $result = mysql_query("SELECT * FROM japanese_words");
  11.  
  12. /* echo "<head>
  13. <meta http-equiv=\"Content-type\" content=\"text/html; charset=utf-8\">
  14. </head>"; */
  15.  
  16. echo "<table border='1'>
  17. <tr>
  18. <th>English</th>
  19. <th>Japanese</th>
  20. </tr>";
  21.  
  22. while($row = mysql_fetch_array($result))
  23. {
  24. echo "<tr>";
  25. echo "<td>" . $row['word_eng'] . "</td>";
  26. echo "<td>" . $row['word_jap'] . "</td>";
  27. echo "</tr>";
  28. }
  29. echo "</table>";
  30.  
  31. ?>


to zamiast japońskich wyrazów wyskakują pytajniki. Dodałem do strony zakomentowane już kodowanie utf-8, bo i tak nic nie pomogło. Nie mam pojęcia jak to ugryźć. Tak samo jak nie wiem jak wypisać te znaki w Pajączku. Język mam normalnie zainstalowany w systemie i mogę nim bezproblemowo pisać, ale w Pajączku pokazują się pytajniki tak samo jak po wypisaniu przez mój skrypt PHP.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
vokiel
post
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Zainstaluj sobie np notepad++, ustaw w nim kodowanie pliku na utf-8 bez BOM, i zobacz czy wtedy też będą krzaczki, jeśli nie, to zmień edytor (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
lordmonkey
post
Post #3





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 2.02.2009

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


No faktycznie Notepad++ sobie z tym radzi :] Ale Pajączek po otwarciu poprawnie zapisanego pliku pokazuje dziwne znaki :/ Będę musiał przeczesać wszystkie opcje może da się coś tam zmienic. Dzięki i czekam na kogoś może będzie wiedział jak to zmienić w Pajączku.


Ale powstał mi też inny problem. W Notepadzie++ mogę pisać po japońsku i zapisywać, ale jak zrobię coś takiego :
  1. <?php
  2. $con = mysql_connect("localhost","root","haslo");
  3. if (!$con)
  4. {
  5. die('Could not connect: ' . mysql_error());
  6. }
  7.  
  8. mysql_select_db("dictionary", $con);
  9.  
  10. $result = mysql_query("SELECT * FROM japanese_words");
  11.  
  12. echo "<head>
  13. <meta http-equiv=\"Content-type\" content=\"text/html; charset=utf-8\">
  14. </head>";
  15.  
  16. echo "<table border='1'>
  17. <tr>
  18. <th>Englisha</th>
  19. <th>Japanese</th>
  20. </tr>";
  21.  
  22. echo "わたし"; // japonskie znaki mozliwe ze ich nie widac
  23. while($row = mysql_fetch_array($result))
  24. {
  25. echo "<tr>";
  26. echo "<td>" . $row['word_eng'] . "</td>";
  27. echo "<td>" . $row['word_jap'] . "</td>";
  28. echo "</tr>";
  29. }
  30. echo "</table>";
  31.  
  32. ?>


to dostaje coś takiego:
(IMG:http://img132.imageshack.us/img132/728/japm.png)
Co to może oznaczać ?

Ten post edytował lordmonkey 21.09.2009, 13:44:42
Go to the top of the page
+Quote Post
vokiel
post
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


A jak masz ustawione kodowanie bazy? Też utf-8? A jak połączenie z bazą i zwracane wynki?
  1. SET NAMES utf8;
  2. SET character_set_connection=utf8;
  3. SET character_set_client=utf8;
  4. SET character_set_results=utf8;


A jak ustawienia tabel? utf8_general_ci ?

Jeśli ustawiasz kodowanie na np utf-8 to już wszędzie, wtedy raczej działa bez problemu
Go to the top of the page
+Quote Post
lordmonkey
post
Post #5





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 2.02.2009

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


ustawiłem już wszędzie utf-8 i dalej to samo...
Go to the top of the page
+Quote Post
thek
post
Post #6





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




To teraz jeszcze zostaje tylko ustawienie w znacznikach meta utf-8, bo z tego co widać to masz już wewnętrzne kodowanie pliku jako utf-8 bez bom.
Go to the top of the page
+Quote Post
lordmonkey
post
Post #7





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 2.02.2009

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


OK już działa. Po prostu musiałem reconfigurować MySQL, żeby domyślnym kodowaniem było utf-8. Ale z pajączkiem dalej mam problem. (IMG:style_emoticons/default/sad.gif)

Ten post edytował lordmonkey 21.09.2009, 15:52:29
Go to the top of the page
+Quote Post
melma.pl
post
Post #8





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 4.11.2010

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


Może pomoże (IMG:style_emoticons/default/smile.gif)
http://forum.php.pl/index.php?s=&showt...st&p=804078
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 15:44