Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Polskie znaki - dodawanie do MySQL @ tutorial
SubZero.
post 15.08.2008, 18:10:24
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 15.09.2007
Skąd: getCity();

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


Witam,

Dopiero zaczynam PHP, zacząłem od tego tutoriala:

http://www.phazm.com/notes/easy-as-pie/eas...with-databases/

Wszystko ładnie chodzi, tylko, że jak dodaje coś z polskimi znakami to mi wychodzą krzaczki zamiast polskich znaków.

Kod
     <?php
     $user="username";
     $password="password";
     $database="database";
     $connection=mysql_connect('localhost',$user,$password);
     @mysql_select_db($database) or die( "Unable to select database");
    
     if ($_REQUEST['quote'] != "") {
         if($_REQUEST['author'] != "") {
             $author = $_REQUEST['author'];
         } else {
             $author = "Anonymous";
         }
         $quote = $_REQUEST['quote'];
        
         $query="INSERT INTO `quotes` (`quote`,`author`) values ('" . mysql_real_escape_string($quote) . "','" . mysql_real_escape_string($author) . "')";
        
         $result=mysql_query($query) or die(mysql_error());
         echo("inserted quote: " . htmlentities($quote) . " by " . htmlentities($author) . " into database");
     }  else {
         echo("<p>Please enter a quote and author</p>");
     }
     ?>
     <form action="" method="post">
     <fieldset>
     <legend>Add a Quote</legend>
     <label for="quote">Quote:</label>
     <input type="text" name="quote" id="quote" maxlength="255" />
     <label for="author">Author:</label>
     <input type="text" name="author" id="author" maxlength="40" />
     <input type="submit" value="Add Quote" />
     </fieldset>
     </form>
    
     mysql_close($connection);
     ?>

Co ciekawe, jak dodaje do bazy MySQL przez phpMyAdmin z polskimi znakami, to wszystko jest OK.


--------------------
Wesołych Świąt!:)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
extreme-dh
post 15.08.2008, 18:15:48
Post #2





Grupa: Zarejestrowani
Postów: 21
Pomógł: 3
Dołączył: 25.05.2008

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


Jakiego kodowania używasz w bazie a jakiego na stronie?
Go to the top of the page
+Quote Post
SubZero.
post 15.08.2008, 18:20:22
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 15.09.2007
Skąd: getCity();

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


W bazie jest "utf8_unicode_ci", na stronie "utf-8".

Teraz nawet jak wyświetlam na stronie wszystko co jest w bazie, to też są krzaczki zamiast polskich znaków, nawet jeśli dodam przez phpMyAdmin i w bazie, widzę, że jest normalnie z polskimi znakami, to na stronie są jednak krzaczki.

Zauważyłem również, że jak po połączeniu z bazą dodam:
Kod
mysql_query("SET NAMES 'UTF8'");

To mi się wyświetlają inne krzaki zamiast polskich znaków...

Ten post edytował SubZero. 15.08.2008, 18:33:25


--------------------
Wesołych Świąt!:)
Go to the top of the page
+Quote Post
jarmiar
post 15.08.2008, 18:55:14
Post #4





Grupa: Zarejestrowani
Postów: 616
Pomógł: 12
Dołączył: 16.07.2006
Skąd: : getCity ( );

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


koduj dane wprowadzane do bazy w base64 i dekoduj przy pobieraniu rekordów. dzięki temu pozbędziesz się problemów z polskimi znakami


--------------------
Jeśli my czegoś nie zrobimy, zrobią to za nas inni
Go to the top of the page
+Quote Post
SubZero.
post 15.08.2008, 19:06:11
Post #5





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 15.09.2007
Skąd: getCity();

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


To jedyne rozwiązanie? Chciałbym mieć jednak w bazie polskie znaki a nie szyfrowane w base64...


--------------------
Wesołych Świąt!:)
Go to the top of the page
+Quote Post
jarmiar
post 15.08.2008, 19:08:02
Post #6





Grupa: Zarejestrowani
Postów: 616
Pomógł: 12
Dołączył: 16.07.2006
Skąd: : getCity ( );

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


ja tak zawsze robie i już nie narzekam na wszelkie problemy z polskimi znakami


--------------------
Jeśli my czegoś nie zrobimy, zrobią to za nas inni
Go to the top of the page
+Quote Post
dadexix
post 15.08.2008, 20:02:51
Post #7





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

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


może iconv" title="Zobacz w manualu PHP" target="_manual Ci pomoże, php nie obsluguje poprawniw unicode


--------------------
"Na przykład zmiennej $jestem_najlepszy przypisujemy wartość logiczną TRUE"
Ja: użyj funkcji[...]
Grins: mów normalnie do mnie a nie po polsku
Ja: normalnie to znaczy jak?
Grins: No w PHP... inaczej mój parser ledwo kuma:)
Go to the top of the page
+Quote Post
wlamywacz
post 15.08.2008, 20:05:49
Post #8





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

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


Cytat(jarmiar @ 15.08.2008, 18:08:02 ) *
ja tak zawsze robie i już nie narzekam na wszelkie problemy z polskimi znakami

Ciekawe jak wyszukiwarkę zrobisz smile.gif
Go to the top of the page
+Quote Post
akurczyk
post 15.08.2008, 22:30:56
Post #9





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

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


Unicode będzie w PHP6
Zaczekaj:D


--------------------
Pozdrawiam
Aleksander Kurczyk
Porady dla webmasterów
Go to the top of the page
+Quote Post
krowal
post 16.08.2008, 08:43:56
Post #10





Grupa: Zarejestrowani
Postów: 561
Pomógł: 72
Dołączył: 15.11.2006

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


nagłówek na stronie:
  1. <meta http-equiv="content-type" content="text/html; charset=utf-8" />

zapytanie po połączeniu z bazą:
  1. <?php
  2. mysql_query("SET NAMES 'UTF8'");
  3. ?>

+ zmień ustawienie kodowania w bazie na utf8_general_ci

i będzie dobrze, nie ma bata smile.gif


--------------------
Nawet świnka może wejść na drzewo kiedy jest chwalona :)
Go to the top of the page
+Quote Post
.radex
post 16.08.2008, 09:22:41
Post #11





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


Cytat(jarmiar @ 15.08.2008, 20:08:02 ) *
ja tak zawsze robie i już nie narzekam na wszelkie problemy z polskimi znakami


Rozwiązanie proste i sprytne, ale mało wydajne. Lepiej to zrobić "normalnie".


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
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: 18.07.2025 - 00:58