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 (19) » Formulario
4. Luis ~ Martes, 30 May 2006 | 09:12H:
Hola Rauto.
He encontrado esto, que espero que te sea de utilidad:
http://textsnippets.com/posts/show/84
Saludos
5. JJ ~ Viernes, 17 Nov 2006 | 16:25H:
No olvideís la función utf8_encode; a mí me ha salvado la vida...
7. 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.
8. 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.
9. 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.
10. 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
11. Elisa ~ Miércoles, 04 Abr 2007 | 19:11H:
Buenas,
A ver, estoy realizando una página web. No entiendo muy bien:
En HTML se debe indicar en el Content-Type:
donde pone "Content-Type", hay que sustituirlo por UTF-8 también?
Porque al abrilo en el explorardor no me sale bien las tildes, no se si lo estoy haciendo bien
Alguien puede echarme un cable?
Gracias,
saludos
12. 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
13. 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!!!!
15. Omar ~ Martes, 19 Jun 2007 | 01:14H:
Tengo un problema, deseo mostrar en un JSP los datos q tengo almacenados en una BD de SQL, pero me muestra signos raros. Ya he puesto algunos Tags como:
<%@ page
language="java"
contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"
%>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
16. 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?
17. María ~ Jueves, 30 Ago 2007 | 11:06H:
Hola, tengo un problema, quiero que aparezca un texto en una nueva linea. Este texto esta en un fichero xml ¿Como puedo hacerlo?
Muchas gracias
18. Erwin ~ Domingo, 16 Sep 2007 | 10:55H:
Hola, tengo un problema, tengo configurado el apache, el php y el mysql como explicas en la pagina, los archivos tambien los guardo en formato utf-8, la base de datos y las tablas tambien la cree en utf-8, ademas utilizo el eclipse para programar las paginas; la pagina me muestra todos los acentos con eso no tengo problema, el problema viene cuando se guarda informacion con acentos de los formularios en la base de datos, se guardan caracteres raros, incluso cuando ejecuto la consulta con php introduciendo directamente los datos en el query. De casualidad sabes porque tengo ese problema de antemano muchas gracias.
19. 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?

