• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

POLSKIE ZNAKI MYSQL PHP

Object Storage Arubacloud
0 głosów
17,486 wizyt
pytanie zadane 17 kwietnia 2015 w SQL, bazy danych przez intoksynator Gaduła (3,450 p.)
Witam

Pomożecie mi panowie z kodowaniem polskich ogonków. Problem wygląda tak ,że pobierane z bazy danych informacje wyświetlają się na stronie bez polskich znaków. Oto mój kod: poprawi ktoś to kodowanie? dzięki! miłego weekendu!

<?php
        
        $q=mysql_connect('localhost','root','') or die ('Padl serwer');
        $q=mysql_select_db('baza') or die ('Padła baza');
        
        $q=mysql_connect('localhost','root','') or die ('Padl serwer');
        $q=mysql_select_db('baza') or die ('Padła baza');
        
        $kodowanie=mysql_query('SET NAMES \'utf8\'');
        
        $wynik=mysql_query('select * from dziela');

5 odpowiedzi

0 głosów
odpowiedź 17 kwietnia 2015 przez makoso Mądrala (7,380 p.)
wybrane 3 maja 2015 przez intoksynator
 
Najlepsza
Nie jeden raz się spotkałem z podobnym problem poprustu otwórze plik gdzie masz skrypt który wyświtla te pobrane informacje ale najlepiej zrób tak wszystkie pliki a mianowicie otwórz każdy plik notatnikiem i zapisz jako ta sama nazwa to samo roszerzenie ale zmień kodowanie czesto tutaj siedzi ansci czy jakoś tak nie pamiętam zmień na UTF-8 jak jest to i tak nadpisz stary plik i sprawdź teraz
+6 głosów
odpowiedź 29 marca 2019 przez daniel1806 Obywatel (1,780 p.)

Widzę po dacie, że temat sprzed kilku lat, ale finalnie chyba nie padła ostateczna odpowiedź, więc podsumuję, żeby kolejne osoby co się z tym problemem zetkną znalazły tu rozwiązanie.

Ten  problem wynika z konfiguracji serwera PHP. Nie zawsze ma się do niej dostęp, więc najlepiej we własnym pliku ze skryptem php zaraz po ustanowieniu połączenia z bazą danych dodać linijkę, która ustawi kodowanie połączenia:

$connect = @new mysqli($host, $user, $password, $dbName); //połączenie z bazą
$connect->query("SET NAMES 'utf8'"); //ustawienie kodowania

a tu link z listą możliwych kodowań:

https://dev.mysql.com/doc/refman/8.0/en/charset-charsets.html

komentarz 10 lipca 2019 przez mateusz.zajac Obywatel (1,460 p.)
Miałem znaki zapytania zamiast polskich znaków i ustawienie kodowania naprawiło błąd w wyświetlaniu. Dziękuję bardzo! :)
0 głosów
odpowiedź 17 kwietnia 2015 przez Damianexo Obywatel (1,710 p.)
zmien kodowanie na UTF-8 np w Notepad++, bo domniemam, że bez ogonków wyświetlaja Ci się informacje np na stronie- te logi błędów dokładnie: "Padła baza" itd. wiec jak masz plik.php (a w nim te dane co u góry) to zmien (na przykładzie notepad++): Format -> Kodowanie UTF-8
komentarz 17 kwietnia 2015 przez intoksynator Gaduła (3,450 p.)

Nie kolego chyba nie choodzi o to. W notepadzie mam ustawione kodowanie na utf 8 bez boom.

A na mojej stronie wyświetlają się znaki np takie "Obraz pi?knie zaprezentuje" 

bez polskich znaków czyli jest. Jak to zmienić?? czemu opcja co mam $kodowanie nie dziala i nie mam polskich 

0 głosów
odpowiedź 17 kwietnia 2015 przez testerius Pasjonat (23,960 p.)
A baza danych ma kodowanie utf8?
0 głosów
odpowiedź 17 kwietnia 2015 przez efiku Szeryf (75,160 p.)

No cześć. Łap: Przydatny link  ( 'SET NAMES utf8', "SET CHARACTER_SET utf8_general_ci" ) 

Baza jak i tabele powinieneś mieć utf8_general_ci, ewentualnie utf8_polish_ci :D

Poszperaj sobie tam, bo z tego co pamiętam rozwiązywałem już podobny problem;-)

a no i meta w htmlu na utf-8 

 

1
komentarz 17 kwietnia 2015 przez intoksynator Gaduła (3,450 p.)
edycja 17 kwietnia 2015 przez intoksynator

Koledzy właśnie w php.ini tez mam utf 8 . w meta też utf 8 . w notepad bez boom. 

I dalej to samo. To chyba nie ma różnicy jak to teksty ze złym kodowaniem były napisane wcześniej teraz powinno i tak się podmienc na polskie znaki prawda? Bo były pisane bez polskich a teraz w phpmyadmin podmieniłem na polskie.

 

W CMD należy w którym momencie dodać 

ALTER DATABASE `nazwa_bazy` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

jak i

ALTER TABLE `nazwa_tabeli` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

Bo błąd wyskakuje, średnik na końcu tak? ale po wybraniu bazy danych czy przed .

pozdrowka!

Podobne pytania

+1 głos
2 odpowiedzi 1,410 wizyt
pytanie zadane 4 września 2015 w C i C++ przez acab0001 Początkujący (410 p.)
0 głosów
2 odpowiedzi 479 wizyt
0 głosów
1 odpowiedź 1,727 wizyt

92,551 zapytań

141,393 odpowiedzi

319,523 komentarzy

61,936 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...