Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]kodowanie w bazie
max_mcee
post 11.08.2010, 14:51:33
Post #1





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


Witam mam mały problem, ponieważ przenosiłem bazę danych z innej do mojej i mam w niej zamiast polskich znaków coś takiego:
"WROC?AW"

jak można by sobie z tym poradzić ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 17)
gigzorr
post 11.08.2010, 14:54:32
Post #2





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


sprawdzic kodowanie w plikach , w bazie , otworzyc notepada++ i ustawic utf 8 bez bum , lub dac na poczatku pliku w , którym to masz
  1. <?php mysql_query('set names utf-8'); ?>


albo z headerem sprobowac.

Ten post edytował gigzorr 11.08.2010, 14:55:09
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 15:01:42
Post #3





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


  1. <?php
  2.  
  3. include("config.php");
  4. $query = "SELECT * FROM baza ORDER BY id DESC LIMIT 10";
  5. $result = mysql_query($query);
  6. mysql_query('set names utf-8');
  7. while($row = mysql_fetch_array($result)) {
  8. ?>
  9. <li><a href="#"><?php echo $row['name']; ?></a></li>
  10. <?php
  11. }
  12. ?>


wciąż jednak błąd występuje, czy dobrze to robię ?
Go to the top of the page
+Quote Post
toel
post 11.08.2010, 15:04:20
Post #4





Grupa: Zarejestrowani
Postów: 97
Pomógł: 11
Dołączył: 2.02.2010

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


set names musisz mieć przed wykonaniem zapytania.
Go to the top of the page
+Quote Post
gigzorr
post 11.08.2010, 15:05:00
Post #5





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


na samym poczatku pliku,skryptu,na samej górze.

  1. <?php
  2. mysql_query( 'SET NAMES utf8' );
  3. ?>


Ten post edytował gigzorr 11.08.2010, 15:05:21
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 15:19:10
Post #6





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


kod taki:
  1. <?php
  2. include ("config.php");
  3. mysql_query('set names utf-8');
  4. $id = $_GET['id'];
  5. $query = "SELECT * FROM baza WHERE id = '$id'";
  6. $result = mysql_query($query);
  7.  
  8. $row = mysql_fetch_array($result);
  9. ?>
  10.  


W bazie danych mam takie wpisy:


na stronie wyświetla się to tak:


więc wciąż problem hmm
Go to the top of the page
+Quote Post
gigzorr
post 11.08.2010, 15:22:24
Post #7





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


kazalem ci zrobic na poczatku pliku skrypty , maja byc dwa odzielne php

  1. <?php to co ci dalem na samej gorze w pliku ?>
  2.  
  3. <?php twoj skrypt ?>


zrób tak a zadziala , jeszcze sprawdz czy jak zmienisz w bazie na łąśłąś coś to sie wyswietli na stronie poprawanie i jak w bazie.

Ten post edytował gigzorr 11.08.2010, 15:22:52
Go to the top of the page
+Quote Post
toel
post 11.08.2010, 15:24:42
Post #8





Grupa: Zarejestrowani
Postów: 97
Pomógł: 11
Dołączył: 2.02.2010

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


  1. mysql_query('set names utf-8');


wywal kreskę

  1. mysql_query('set names utf8');
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 15:27:46
Post #9





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


nawet jak zrobię tak jak mówisz to nie działa...
jak zmieniłem w bazie ten ? na np. ł to też nie działa...

co to może być ?
Go to the top of the page
+Quote Post
toel
post 11.08.2010, 15:29:30
Post #10





Grupa: Zarejestrowani
Postów: 97
Pomógł: 11
Dołączył: 2.02.2010

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


a jakie masz kodowanie strony ?
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 15:30:42
Post #11





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


  1. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
Go to the top of the page
+Quote Post
toel
post 11.08.2010, 15:32:20
Post #12





Grupa: Zarejestrowani
Postów: 97
Pomógł: 11
Dołączył: 2.02.2010

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


spróbuj iconv
Go to the top of the page
+Quote Post
gigzorr
post 11.08.2010, 15:39:15
Post #13





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


ym , odpal plik w notepadzie++ daj utf 8 bez bum zapisz, , znow otworz plik przez notepada zobacz czy na utf 8 bez bum sie zmienilo jak tak to musi dzialac.
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 15:51:17
Post #14





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


  1. <?php
  2.  
  3. include("config.php");
  4. mysql_query('set names utf-8');
  5.  
  6. ?>
  7.  
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  9. <html xmlns="http://www.w3.org/1999/xhtml">
  10. <head>
  11. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  12. <title>Tytuł</title>
  13. <meta name="keywords" content="" />
  14. <meta name="description" content="" />
  15. <link href="default.css" rel="stylesheet" type="text/css" />
  16. </head>
  17. <body>
  18.  
  19. <?php
  20.  
  21. $id = $_GET['id'];
  22. $query = "SELECT * FROM baza WHERE id = '$id'";
  23. $result = mysql_query($query);
  24.  
  25. $row = mysql_fetch_array($result);
  26. echo $row['name'];
  27. ?>
  28.  
  29. </body>
  30. </html>


wszystkie znaki polskie się normalnie wyświetlają, ale te z bazy nie...
Go to the top of the page
+Quote Post
gigzorr
post 11.08.2010, 15:55:25
Post #15





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


config.php jak mam rozumiec tam masz polaczenie z baza?daj jeszcze tam <?php ten kawalek kodu co ci dalem ?> <? polaczenie ?> bo moze tutaj byc problem, jak nie pomoze to próbuj i sproboj z notepadem jeszcze.
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 16:07:13
Post #16





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


nie mam pojęcia...

wgrywałem bazę przez php my admin, może coś z tym jest nie tak ?
Go to the top of the page
+Quote Post
bleblok
post 11.08.2010, 16:09:51
Post #17





Grupa: Zarejestrowani
Postów: 18
Pomógł: 6
Dołączył: 15.09.2009

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


Prawdopodobnie podczas importu ustawiłeś złe kodowanie.
Znaki w bazie już ska pokrzaczone.

Zaimportuj bazę jeszcze raz, tylko się upewnij, że masz kodowanie do importu takie samo jak kodowanie pliku.
Go to the top of the page
+Quote Post
max_mcee
post 11.08.2010, 18:25:49
Post #18





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


Cytat(bleblok @ 11.08.2010, 17:09:51 ) *
Prawdopodobnie podczas importu ustawiłeś złe kodowanie.
Znaki w bazie już ska pokrzaczone.

Zaimportuj bazę jeszcze raz, tylko się upewnij, że masz kodowanie do importu takie samo jak kodowanie pliku.



tylko, że plik kopi bazy danych jest w latin2, a jak importuje przez phpmyadmin to takowego kodowania nie ma.
wgrywałem przez iso-8859-2 i teraz są polskie znaki, ale tylko w bazie, a na stronie nie..

czyli nikt nie ma pojęcia ?
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: 14.08.2025 - 02:00