Los valores introducidos por el navegador se confunden en los programas PHP


Fecha de publicación:8 de diciembre de 2020.



INFOMARTION > Los valores introducidos por el navegador se confunden en los programas PHP

Resumen.

Se producía un texto ilegible al pasar de la pantalla de entrada a la de confirmación en PHP.

El texto se confunde al introducirlo en el formulario y pasar a la pantalla de confirmación.

También se produce un texto ilegible al pasar a la propia pantalla debido a errores de comprobación de entrada.

Como el servidor acababa de ser construido, sentí que algo faltaba en la configuración de PHP, así que describiré lo que descubrí en ese momento.


Índice de contenidos

  1. investigación (para determinar la causa de algo)
  2. resumen

1. investigación (para determinar la causa de algo)

Para investigar la causa del problema se investigó la siguiente información.

1-1. encuesta

En primer lugar, compruebe la configuración de PHP (php.ini).

php.ini


default_charset = "UTF-8"
mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = On

Es como se describe arriba y parece estar bien.

Entonces el problema parece ser causado por la fuente PHP.

Sin embargo, la fuente de PHP no identificó el problema probable.

Una vez más, revisé el php.ini en busca de configuraciones sospechosas y encontré una configuración sospechosa.

php.ini


mbstring.http_input = auto

No estaba claro si se codificaba en UTF-8 porque estaba configurado como automático, así que se cambió de la siguiente manera para probarlo.

php.ini


mbstring.http_input = UTF-8

Se ha resuelto con éxito el texto ilegible.

Esta configuración es necesaria para el módulo mbstring cuando se utilizan cadenas multibyte como el japonés en PHP.

Configuración de la codificación de las peticiones http recibidas.

2. resumen

Si se produce un texto confuso, intente primero organizar el flujo de procesamiento.

Y si experimenta caracteres confusos cuando utiliza PHP para la transición de la pantalla de entrada a la pantalla de confirmación u otras transiciones de pantalla, sospeche de los siguientes ajustes en php.ini.

La configuración por defecto es 'auto', así que compruébalo cuando uses mbstring para procesar cadenas multibyte.

Gracias por mirar hasta el final.