Especial UTF-8 (I)
23:38 H (CET)| Temas: Apache · Especiales · MYSQL · PHP · XHTML
El UTF-8 es un tipo de codificación de caracteres para Unicode que nos permite escribir nuestras páginas web y no preocuparnos por si se va a ver correctamente o van a aparecer caracteres extraños.
Las veces que he trabajado en proyectos multilenguaje es lo que hemos usado, salvo en el caso de japonés y coreano que es preferible usar el UTF-16 porque ocupa menos espacio. Eso ha hecho que me haya acostumbrado a realizar siempre los proyectos en UTF-8 y así evitar luego los problemas que puedan surgir en futuras actualizaciones o en testeos y tener luego que cambiar todo el proyecto a UTF-8.
Es necesario que cada parte del proyecto use la codificación UTF-8, no vale únicamente con escribir la páginas HTML en UTF-8, porque, por ejemplo, si obtenemos los datos de la BD en otra codificación puede haber problemas a la hora de mostrarlos. Los cambios necesarios serían los siguientes:
- En MySQL es necesario que la codificación de sistema, de la base de datos y de las tablas sea UTF-8.
El sistema solo se puede cambiar de codificación cuando se recompila, pero si se puede arrancar con UTF-8:
Las bases de datos se deben crear con la codificación UTF-8:> mysqld --character-set-server=utf8
Y por último crear las tablas en la misma codificación:CREATE DATABASE nombre_bd CHARACTER SET utf8CREATE TABLE nombre_tabla (lista_columnas) CHARACTER SET utf8 - En PHP se debería modificar en el archivo php.ini el valor de default_charset, aunque este valor se obvia si ya viene dado en el Content-Type y es mejor no indicarlo:
default_charset = "utf-8" - En Apache se debe modificar el fichero .htaccess para indicar que el tipo de codificación por defecto sea UTF-8:
AddDefaultCharset UTF-8 - En HTML se debe indicar en el Content-Type:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> - Y por último en un XML se debe añadir el encoding:
<?xml version="1.0" encoding="UTF-8" ?>
ASCII, Unicode, UTF-8 y la Iñtërnâçiônàlizæçiøn - parte I (juque).
Pasando Wordpress de ISO-8859-1 a UTF-8 (genbeta).
Microsiervos en UTF-8 / Wiki de de Blogs en UTF-8 (Microsiervos).
¡UTF-8 vale la pena! (minid).
Feedback off | Del.icio.us
4. JJ ~ Viernes, 17 Nov 2006 | 16:25H:
No olvideís la función utf8_encode; a mí me ha salvado la vida...
6. Andrea ~ Jueves, 01 Mar 2007 | 22:41H:
Hola.
Tengo el siguiente problemita: No puedo ver (en FFox v2.0.0.2 y Netscape v8.1) los tildes cuando se emite un alert en javaScript, a pesar que tengo el código tal como lo indico a continuación:
DTD/xhtml11.dtd">
function juradalegal() {
alert("Próximamente estará disponible el documento solicitado");
}
...etc.
Espero haber sido clara.
Les agradezco cualquier ayuda.
Saludos.
7. Andrea ~ Jueves, 01 Mar 2007 | 22:44H:
Hola.
Reescribo el código (anteriormente no apareció bien):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/
DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Language" content="es" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<script type="text/javascript">
function juradalegal() {
alert("Próximamente estará disponible el documento solicitado");
}
</script>
...etc.
8. Andrea ~ Jueves, 01 Mar 2007 | 22:46H:
Qué lástima, no aparece bien el código que quiero que miren para que puedan aydarme.
Saludos.
9. Luis ~ Viernes, 02 Mar 2007 | 08:31H:
Hola Andrea, he corregido tu comentario para que se lea correctamente, un consejito para la próxima, solo algunas etiquetas HTML se suelen permitir en los comentarios, y lo que hacen es mostrarse. Si quieres que vean tu código HTML tienes que escapar las etiquetas, sustituye < por < y > por ≶
Yo creo que tu fichero no está guardado como UTF-8, una cosa es cómo lo indicas en el código HTML y otra cosa es que el fichero sea realmente UTF-8. Mira en las opciones de tu editor y guarda en fichero como UTF-8 y si no admite esta codificación, busca un editor como el PSPad o el UltraEdit (ambos para Windows) que si que permiten estas codificaciones.
Saludos
10. Luis ~ Miércoles, 04 Abr 2007 | 20:13H:
Hola Elisa, lo más seguro es que el fichero no tenga formato UTF-8. El HTML lo tienes bien, no tienes que sustituir Content-Type por UTF-8, déjalo como lo has escrito.
Lo que tienes que mirar es que cuando guardes el fichero, sea con formato UTF-8. No sé que editor usas, pero editores como PSPad o el Ultra-Edit admiten esta posibilidad.
Saludos
11. Gerson ~ Sábado, 09 Jun 2007 | 23:01H:
Hola soy nuevo aqui y si me pueden ayudar se los agradeseria mucho.
Estoi buscando un programa que me permita salvar en formato UTF-8, que no sea word, pero para mac.
Please si me pueden ayudar se los agradeseria mucho!!!!
12. Luis ~ Martes, 19 Jun 2007 | 10:42H:
Cuando realizas aplicaciones indicando el charset, tienes que tener en cuenta que deben estar especificados en tres sitios: BD, codificación del fichero (al "Guardar como...") y respuesta HTTP.
Tu lo has indicado en la respuesta HTTP y en la cabecera del HTML. ¿Tienen la BD y el fichero físico la misma codificación?
13. Betty ~ Lunes, 11 Feb 2008 | 20:50H:
Hola. Tengo un problema al bajar una pagina se me bloquea, y aparece propiedad desconocida align o cellpading' , declaracion rechazada(consola de error) que sera?
16. puey sarsa ~ Jueves, 23 Oct 2008 | 09:39H:
hola, soy sarsosa y mi madre hace esquina en el camp nou, mi abuelo se llama olegario puey sarsa y se tira pedos.
hi hitler xd

