![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 30.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam problem z kodowaniem znaków w php... dokladniej chodzi o to że mam formularz który wysyła dane do bazy danych mysql. Baz danych ma kodowanie znaków: jak tworze tabele to wpisuje -> engine=InnoDB DEFAULT CHARSET=utf8; Metoda porównywania napisów w mysql: utf8_polish_ci System kodowania znaków dla MySQL: UTF-8 Unicode (utf8) wszytsko ładnie zapisuje się w bazie i odczytuje na stronie ale problem jest w tym że jak wpisuje tekst polski w pole input i gdy wciskam OK to następuje weryfikacja formularza i jeśli są błędy to odświeża formularz i wpisuje dane wcześniej wpisane w pola input - no i niestety już pole zamist polskich znaków ma krzaki :-( (jak formularz jest oki to wszytskie polskie znaki są wysłane do bazy i tam się dobrze zapisują oraz odczytują gdy je pobieram w php) Ponieżej kawalek kodu który działa i można przetestować (po wisaniu slowa "aaaaaaaa" i kliknieciu oki wszystko jest dobrze ale gdy już wpiszę "śąćżłóźźź" wyskakują krzaki :-( ) Kod <?php ob_start(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <?php if ($_SERVER['REQUEST_METHOD'] == 'GET') { display_form(array()); } else { $errors = validate_form(); if (count($errors)) { display_form($errors); } else { $imie_k=$_POST['imie_k']; try { dodaj_nowego_klienta($imie_k); komunikat('Dodano nowego klienta'); } catch (Exception $e) { blad($e->getMessage()); exit; } } } function display_form($errors) { $defaults['imie_k'] = isset($_POST['imie_k']) ? htmlentities($_POST['imie_k']) : ''; ?> <script><!-- function displayWindow(url, width, height) { var Win = window.open(url,"displayWindow",'width=' + width + ',height=' + height + ',resizable=0,scrollbars=yes,menubar=no' );} //--> </script> <div id='maincontent'> <h1 class='first'></h1> <h1>Dodaj klienta do bazy</h1> <form method=post action='<?php echo $_SERVER['SCRIPT_NAME'] ?>'> <h2> <table> <tr> <td>Imie:<font color=red > * </font></td> <td valign=top><input type=text name=imie_k value='<?php echo $defaults['imie_k'] ?>' size=30 maxlength=20</td></tr> <td colspan=2 align=center> <input class='button' type=submit value="OK"></td> </h2> </form> <p class='last'></p> </div><!-- end div maincontent --> <?php } function print_error($key, $errors) { if (isset($errors[$key])) { echo "<dd class='error' >{$errors[$key]}</dd>"; } } function validate_form() { global $flavors; $errors = array(); if (isset($_POST['imie_k']) && (strlen($_POST['imie_k']) > 3)) { $errors['imie_k'] = '<font color=red > długa nazwa</font>'; } return $errors; } ?> </html> <?php ob_end_flush(); ?> |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Może chodzić o kodowanie znaków... ale to nie temat na to pod forum.
-------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Ja tylko formalnie. Widzę, że dyskusja nad poziomem edukacji nie jest bezsensowna, a przynajmniej narzekanie na owy poziom jest zasadne
http://forum.php.pl/Poziom_szkolnictwa_zar...tc_t100547.html Następnym razem pomyśl, zanim gdzieś otworzysz temat. Przenoszę na PHP -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 30.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
sorki - nie mam doswidczenia wystawianiu postów i nie zauważyłem gdzie to poszło
![]() co do kodowania to mam w ustawione w pliku php w sekscji head <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> inne polskie znaki które wysietlane są w formularzu html i php są poprawne, i te które sa wysyłane i pobierane z bazy też! kod pisze w eclipse - tam też mam ustawione kodowanie na utf-8. nie wiem gdzie jest błąd i proszę o pomoc. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
htmlentities" title="Zobacz w manualu PHP" target="_manual - trzeci parametr
-------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 30.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
dzięki wielkie!! pomogło :-)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 11.08.2025 - 12:57 |