Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL]Polskie znaki przy update w mysql UTF-8
redelek
post 25.06.2009, 12:44:19
Post #1





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

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


Hej,

Niestety mam problem z UPDATE.
Tak wygląda mój kod
  1. <?php
  2.            $tytul=$_POST["f_tytul"];
  3.            $opis=$_POST["f_opis"];
  4.            $kat=$_POST["f_kat"];
  5.            $dt = date("Y-m-d");
  6.            $tm = date ("H:i:s");
  7.            $rem = $REMOTE_ADDR;
  8.            polacz_db();
  9.            mysql_query("SET NAMES 'utf8'");
  10.            mysql_query("SET CHARACTER_SET_CLIENT=utf8");
  11.            mysql_query("SET CHARACTER_SET_RESULTS=utf8");
  12.            $wynik= mysql_query("UPDATE $M_TABELA SET `kategoria`='$kat', `tytul`='$tytul', `opis`='$opis', `dt`='$dt', `time`='$tm' WHERE `id_bz`='$num_rek'") or die('<div id="error">Nie mogę zaktualizować rekordu '.$num_rek.'</div>');
  13.            if ($wynik==1) {
  14.            echo '<div id="info"><a href="lista.php?rek=l"><img src="../img/wroc.png" alt="W" /></a>&nbsp;&nbsp;&nbsp;&nbsp;Rekord zaktualizowany '.$num_rek.'</div>';
  15.            } else{
  16.            echo 'Niedozwolone parametry !!!';
  17.            }    
  18.            ?>

Przy INSERT działa wszystko pieknie i poprawnie. Bazy mam ustawione na UTF-8, stronę i Apache.
Nie wiem dlaczego , po wykonaniu UPDATE wszystko się rozwala, w bazie też są krzaczki sad.gif

Macie może jakiś pomysł ?

Ten post edytował redelek 25.06.2009, 12:52:51


--------------------
Pozdrawiam
Piotrek R
Go to the top of the page
+Quote Post
blooregard
post 25.06.2009, 12:46:43
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Sprawdź ustawienie kodowania plików w edytorze, którego używasz do PHP.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
redelek
post 25.06.2009, 12:48:28
Post #3





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

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


Cytat(blooregard @ 25.06.2009, 11:46:43 ) *
Sprawdź ustawienie kodowania plików w edytorze, którego używasz do PHP.


Mam Notepad ++ i ustawione UTF-8 bez BOM


--------------------
Pozdrawiam
Piotrek R
Go to the top of the page
+Quote Post
blooregard
post 25.06.2009, 12:52:44
Post #4


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
Mam Notepad ++ i ustawione UTF-8 bez BOM

No to mnie się wyczerpały koncepcje sad.gif
Błąd musi tkwić gdzieś w kodzie. A operację UPDATE masz w pliku (albo jest inkludowane do pliku), gdzie na pewno jest ustawione kodowanie na UTF-8?


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
redelek
post 25.06.2009, 13:06:02
Post #5





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

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


kodowanie strony, mam ustawione w pliku, który jest include na samym początku.
Dziwne, że INSERT działa bardzo ładnie , a UPDATE nie

Oki poradziłem sobie.

Dopisałem gdzie to tylko możliwe przy wszystkich zapytaniach i działa super.
Głównie chodziło o to , że dane pobierane do EDYCJI nie były przefiltrowane przez to
  1. <?php
  2. mysql_query("SET NAMES 'utf8'");
  3.                mysql_query("SET CHARACTER_SET_CLIENT=utf8");
  4.                mysql_query("SET CHARACTER_SET_RESULTS=utf8");
  5. ?>


Działa jak złoto smile.gif


--------------------
Pozdrawiam
Piotrek R
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: 21.06.2025 - 09:39