sql >> Base de Datos >  >> RDS >> Mysql

Problemas al insertar una cadena utf-8 en la base de datos y luego enviarla a la página web

Sí, puedo.
No le dijo al servidor Mysql qué codificación de datos desea.
Mysql puede proporcionar cualquier codificación en caso de que la codificación de su página sea diferente de la codificación de datos almacenados. Y recodifíquelo sobre la marcha.
Por lo tanto, debe informarse sobre la codificación preferida del cliente (su código PHP es el cliente de la base de datos).
Por defecto es latin1 . Por lo tanto, debido a que no hay tales símbolos en la tabla de caracteres latin1, en su lugar se devuelven signos de interrogación.

Hay 2 formas de decirle a mysql qué codificación queremos:

  • una ligeramente más preferida es mysqli_set_charset() función (método en su caso).
  • el menos preferido es SET NAMES consulta.

Pero mientras esté usando la extensión mysqli correctamente, realmente no importa. (aunque no lo eres)

Tenga en cuenta que en mysql esta codificación se llama utf8 , sin guiones ni espacios.