A böngésző által beírt értékek zavarosak a PHP programokban
Megjelenés dátuma:2020. december 8.
INFOMARTION > A böngésző által beírt értékek zavarosak a PHP programokban
Áttekintés.
A PHP-ban a beviteli képernyőről a megerősítő képernyőre való áttéréskor zavaros szöveg jelentkezett.
Az űrlapon a szöveg bevitele és a megerősítő képernyőre való áttérés során a szöveg zavaros.
A saját képernyőre való áttéréskor a bevitel-ellenőrzési hibák miatt torz szöveg is megjelenik.
Mivel a szerver még csak most épült, úgy éreztem, hogy valami hiányzik a PHP-konfigurációból, ezért leírom, hogy mit találtam akkor.
Tartalomjegyzék
1. vizsgálat (valaminek az okának megállapítása)
A probléma okának felderítése érdekében a következő információkat vizsgálták meg.
1-1. felmérés
Először ellenőrizze a PHP beállításokat (php.ini).
default_charset = "UTF-8"
mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = On
A fent leírtak szerint működik, és úgy tűnik, rendben van.
Akkor úgy tűnik, hogy a problémát a PHP-forrás okozza.
A PHP-forrás azonban nem azonosította a valószínűsíthető problémát.
Ismét ellenőriztem a php.ini gyanús beállításokat, és találtam egy gyanús beállítást.
mbstring.http_input = auto
Nem volt egyértelmű, hogy UTF-8-ban van-e kódolva, mert auto volt beállítva, ezért a következő módon változtattuk meg, hogy kipróbáljuk.
mbstring.http_input = UTF-8
Sikeresen megoldotta a torzított szöveget.
Ez a beállítás az mbstring modul számára szükséges, ha többbájtos karakterláncokat használunk, mint például a japán nyelv a PHP-ben.
A fogadott http-kérések kódolásának konfigurálása.
2. összefoglaló
Ha zavaros szöveg jelenik meg, először próbálja meg rendezni a feldolgozási folyamatot.
Ha pedig a PHP használatával a beviteli képernyőről a megerősítő képernyőre való áttéréskor vagy más képernyőátmeneteknél zavaros karaktereket tapasztal, gyanakodjon a következő beállításokra a php.ini fájlban.
Az alapértelmezett beállítás az 'auto', ezért ellenőrizze ezt, ha az mbstring-et többbájtos karakterláncok feldolgozására használja.
Köszönjük, hogy a végéig figyeltek.