Wartości wprowadzane przez przeglądarkę są zniekształcane w programach PHP
Data publikacji:8 grudnia 2020 r.
INFOMARTION > Wartości wprowadzane przez przeglądarkę są zniekształcane w programach PHP
Przegląd.
Podczas przechodzenia z ekranu wprowadzania danych do ekranu potwierdzenia w PHP występował zniekształcony tekst.
Tekst jest zniekształcony podczas wprowadzania tekstu w formularzu i przechodzenia do ekranu potwierdzenia.
Z powodu błędów sprawdzania danych wejściowych podczas przechodzenia do własnego ekranu pojawia się również zniekształcony tekst.
Ponieważ serwer był dopiero co zbudowany, czułem, że czegoś brakuje w konfiguracji PHP, więc opiszę, czego się wtedy dowiedziałem.
Spis treści
1. dochodzenie (w celu ustalenia przyczyny czegoś)
W celu zbadania przyczyny problemu przeanalizowano następujące informacje.
1-1. ankieta
Najpierw należy sprawdzić ustawienia PHP (php.ini).
default_charset = "UTF-8"
mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = On
Jest on zgodny z opisem powyżej i wydaje się być w porządku.
Wtedy problem wydaje się być spowodowany przez źródło PHP.
Źródło PZP nie określiło jednak prawdopodobnego problemu.
Po raz kolejny sprawdziłem php.ini pod kątem podejrzanych ustawień i znalazłem jedno podejrzane ustawienie.
mbstring.http_input = auto
Nie było jasne, czy jest on zakodowany w UTF-8, ponieważ był ustawiony na auto, więc aby go wypróbować, zmieniono go w następujący sposób.
mbstring.http_input = UTF-8
Udało się rozwiązać problem zniekształconego tekstu.
To ustawienie jest konieczne dla modułu mbstring, gdy w PHP używa się wielobajtowych łańcuchów, takich jak japoński.
Konfiguracja kodowania otrzymywanych żądań http.
2. streszczenie
W przypadku wystąpienia zniekształconego tekstu należy najpierw spróbować zorganizować przepływ przetwarzania.
Jeśli podczas używania PHP do przechodzenia z ekranu wprowadzania do ekranu potwierdzania lub innych przejść między ekranami występują zniekształcone znaki, należy sprawdzić następujące ustawienia w pliku php.ini.
Domyślnym ustawieniem jest "auto", więc należy je sprawdzić, gdy używamy mbstring do przetwarzania ciągów wielobajtowych.
Dziękujemy, że oglądaliście do końca.
■INFORMATION
Kliknij tutaj, aby przejść do górnej strony INFORMACJI.
■PROFILE
Kliknij tutaj, aby zobaczyć profil.
■Dane kontaktowe.
W przypadku pytań dotyczących artykułu prosimy o kontakt tutaj.