![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 4.10.2020 Ostrzeżenie: (0%) ![]() ![]() |
Przede wszystkim pragnę wszystkich zgromadzonych powitać wszem i wobec.
bardzo proszę o pomoc bo straciłem już nadzieję na rozwiązanie. Mam serwer apache, z php 7.3. Mam prosty skrypt, który po ODBC pobiera dane a część posiada tekst cyrylicą. Niestety uruchamiając skrypt w przeglądarce na kompie w sieci, wszystkie dane cyrylicą po ODBC wyświetlają się jako znaki zapytania. Wyświetlając echo "napis cyrylicą" wszystko ładnie się wyświetla. Podejrzewam apacha bo z kolei uruchamiając w bashu poprzez php skrypt.php wyświetla się wszystko prawidłowo i z odbc i z echo. Gdzie się da ustawiłem UTF-8, w apachu, php dla cli i dla apacha, w nagówku pliku php. Próbowałem też bez ustawionego domyślnego kodowania w apachu i ustawione było tylko kodowanie w header pliku php. Wytłumaczcie mi proszę gdzie szukać przyczyny skoro teoretycznie to nie wina ODBC bo w bashu interpreter php wyświetla poprawnie ale też nie wina apacha bo tekst cyrylicą wywołany w pliku php też wyświetla się poprawnie. Będę wdzięczny za wszelką pomoc. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Na serio kiedyś miałem identyczne znaki zapytania jak nie ustawiłem SET NAMES. Mogę jeszcze sprawdzić czy taki skrypt w konsoli też mi wypluwa znaki zapytania czy litery, chociaż dziwne to by było, gdyby prawidłowo je zinterpretował. Wydaje mi się, że driver do bazy danych wyrzuca te znaki zapytania na wyjściu. Tylko dlaczego ta cholerna konsola dostaje prawidłowe znaki (IMG:style_emoticons/default/laugh.gif)
EDIT Zrobiłem test w czystym PHP i PDO, ale zadziałało mi bez SET NAMES. Nie wiem co się zmieniło, może w MySQL 8 to już nie jest potrzebne. Ten post edytował SmokAnalog 4.10.2020, 23:49:24 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 09:04 |