Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema con tildes

Estas en el tema de Problema con tildes en el foro de Frameworks JS en Foros del Web. Hola Mando información mediante ajax para recuperarla de un archivo php datos de una base de datos mysql. Código: ajax.open('POST','mifile.php',false); ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); ajax.send(null); var filas = ...
  #1 (permalink)  
Antiguo 27/03/2010, 11:15
 
Fecha de Ingreso: noviembre-2005
Mensajes: 186
Antigüedad: 19 años
Puntos: 1
Problema con tildes

Hola

Mando información mediante ajax para recuperarla de un archivo php datos de una base de datos mysql.

Código:
ajax.open('POST','mifile.php',false);
	ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	ajax.send(null);

var filas = ajax.responseText.parseJSON();
	var cadena = '';
	
	for(var i in filas)
		if(filas.hasOwnProperty(i)){
			cadena += filas[i].noticia;
			
		}

document.getElementById('resultado').innerHTML = cadena;
en php tengo este código:

Código PHP:
$filas = array();
            
while(
$fila=mysql_fetch_assoc($resultado)){
                
$filas[] = $fila;
                
            }
        
        
mysql_free_result($resultado);
        
$json = new Services_JSON();
        print 
$json->encode($filas); 
pues bien, len la página html la palabra comunicación la escribe así:

comunicacin00200063on

Pruebas que he hecho.
En el archivo php, cuando recibe el texto de la base de datos, lo he copiado en un block de notas: El resultado aparece perfecto.

He puesto en el archivo javascript, un alert(cadena) y ya aparece la palabra mal escrita.

Saludos
  #2 (permalink)  
Antiguo 30/03/2010, 17:59
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 17 años
Puntos: 25
Respuesta: Problema con tildes

utiliza utf8_encode() en tu PHP y verifica que tu HTML tenga UTF-8 predeterminado. saludos.

Código PHP:
  
   $filas 
= array();
            
while(
$fila=mysql_fetch_assoc($resultado)){
                
$filas[] = $fila;
                
            }
        
        
mysql_free_result($resultado);
        
$json = new Services_JSON();
        print 
$json->encode(utf8_encode($filas)); 
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #3 (permalink)  
Antiguo 01/04/2010, 12:34
Avatar de chichote
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Santiago - Chile
Mensajes: 1.868
Antigüedad: 19 años, 11 meses
Puntos: 145
Respuesta: Problema con tildes

hola, revisa el content-type del html donde muestras la info y tambien utiliza utf8_encode($variable) para tirar por pantalla un rescate de la base de datos.

te recomiendo la siguiente cabecera

Cita:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
y ademas utiliza utf8_encode para imprimir textos desde php.


Saludos

Etiquetas: ajax, 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 06:42.