Foros del Web » Creando para Internet » HTML »

Tildes

Estas en el tema de Tildes en el foro de HTML en Foros del Web. Buenas a todos, Os comento: Tengo una página web con php, javascript y que ataca a base de datos. Antes tenía puesta en la cabecera: ...
  #1 (permalink)  
Antiguo 08/11/2010, 06:09
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 16 años, 6 meses
Puntos: 1
Tildes

Buenas a todos,

Os comento:

Tengo una página web con php, javascript y que ataca a base de datos.

Antes tenía puesta en la cabecera:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

y el texto que mostraba de la base de datos con php me mostraba las tildes con caracteres raros, pero cuando pulsaba un botón con javascript y rellenaba esos campos me mostraba bien las tildes.

Después he puesto:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

y de primeras lo que muestro con php de la base de datos me lo muestra bien, pero cuando pulso el botón de javascript para mostrar otro registro me muestra los caracteres raros.

¿Qué debo hacer? ¿Cómo puedo solucionarlo?

Un saludo
  #2 (permalink)  
Antiguo 09/11/2010, 13:37
Avatar de Damoc  
Fecha de Ingreso: octubre-2010
Mensajes: 26
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Tildes

Si he entendido bien tu problema, creo que esto podría servirte... aunque tiene más que ver con php y con como creas tus bases de datos que con html...

Cita:
1) Cuando crees una base MySQL a través de PHPMyAdmin (yo lo hago con este programa) y quieras que contenga campos en utf-8, pon especial atención en que el cotejamiento de las conexiones MySQL sea en utf_unicode_ci, la tabla o tablas con cotejamiento utf_unicode_ci, los campos con cotejamiento utf_unicode_ci (son los que yo utilizo, aunque podría ser cualquier otro unicode), aunque sólo aquellos campos en que voy a introducir utf-8. ARCHIVOS HTML Y PHP
2) Las páginas con terminación html y php donde verás los textos deben ser guardadas con formato utf-8 (ojo, porque algunos editores no lo permiten y otros como bloc de notas pueden causarte algún problema si luego vas a trabajar con sesiones...).
3) En el archivo con terminación html debes escribir este meta <meta http-equiv="Content-type" content="text/html; charset=utf-8" />

CONEXIÓN MYSQL MEDIANTE PHP
4) Cuando hagas la conexión a la base de datos MySQL, deberás escribir tras la conexión y justo después de seleccionar la base: mysql_query ("SET NAMES 'utf8'"), como en el ejemplo.
Código PHP:
<?php
$link 
mysql_connect ('localhost''root''tuclave');
if (!
$link){
echo 
'error al conectar';
die;
}
$bd mysql_select_db('mibase');
if (!
$bd){
echo 
'error al seleccionar la base d datos';
die;
}
mysql_query ("SET NAMES 'utf8'");
?>
Siguiendo estos pasos que encontré en alguna web, yo no he vuelto a tener problemas como los que mencionas...

Espero que te sirva!
  #3 (permalink)  
Antiguo 09/11/2010, 14:34
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Tildes

Probá con lo siguiente

tus documentos con utf-8 (el meta y guardados como utf-8 no BOM en el editor)

tu tabla con utf8_general_ci


en tu php
Código PHP:
Ver original
  1. $conectar_BD = mysql_connect($sql_hostname,$sql_login,$sql_password);
  2. $seleccion_BD = mysql_select_db($sql_base,$conectar_BD);
  3. mysql_set_charset("utf8",$conectar_BD);

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: tildes
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:07.