MySQL
Conectando con UTF-8 usando varios lenguajes de programación.
Buscar..
Pitón
1ª o 2ª línea en código fuente (para tener literales en el código codificado en utf8):
# -*- coding: utf-8 -*-
Conexión:
db = MySQLdb.connect(host=DB_HOST, user=DB_USER, passwd=DB_PASS, db=DB_NAME,
charset="utf8mb4", use_unicode=True)
Para páginas web, una de estas:
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
PHP
En php.ini (este es el valor predeterminado después de PHP 5.6):
default_charset UTF-8
Al construir una página web:
header('Content-type: text/plain; charset=UTF-8');
Al conectarse a MySQL:
(for mysql:) Do not use the mysql_* API!
(for mysqli:) $mysqli_obj->set_charset('utf8mb4');
(for PDO:) $db = new PDO('dblib:host=host;dbname=db;charset=utf8', $user, $pwd);
En el código, no utilice ninguna rutina de conversión.
Para la entrada de datos,
<form accept-charset="UTF-8">
Para JSON, para evitar \uxxxx
:
$t = json_encode($s, JSON_UNESCAPED_UNICODE);
Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow