Comunidad de diseño web y desarrollo en internet online

Problemas en xml y flash - Acentos y Ñ

Citar            
MensajeEscrito el 06 Dic 2005 07:47 pm
Saludos,
no consigo mostrar correctamente los caracteres acentuados y ñ en los datos de un xml dentro de flash.
He mirado por el foro (buscar), y probado "casi" todo lo que se aconseja, pero sigo sin tener buenos resultados.

Me explico:

No tenía puesto el System.Codepage = true, y me aparecían cuadraditos en lugar de esos caracteres "malditos". Me da igual poner el código anterior, ya que ese contenido va dirigido a destinatarios "españoles", asi que me da igual si el ususario fuera de otro "system" (problema que podríamos encontrar con ese código).

Si pongo el System.Codepage = true, ya no me salen los cuadritos, pero me salen en su lugar otros caracteres:

Código :

Baño -> BAÑO
Donde ahora aparece Ñ, salía un cuadrado.

Os pongo los scripts que uso:
flash

Código :

System.useCodepage = true;
var xmlVal:XML = new XML();
Boton.onRelease = function() {
   var localidad:String = _root.CampoA.text;
   trace(localidad);
   var url:String = "buscar.php?localidad="+localidad;
   xmlVal.load(url);
   xmlVal.ignoreWhite = true;
   xmlVal.onLoad = function(bSuccess:Boolean) {
      if (bSuccess) {
         var xnAlquileres:XMLNode = xmlVal.firstChild;
         var xnAlquiler:XMLNode = xnAlquileres.firstChild;
         _root.campoxml.text = unescape(xnAlquiler.firstChild.toString());
      } else {
         trace("Error en la lectura del xml");
      }
   };
};


php

Código :

<? 
$basededatos = "queennethouse";
$servidor = "localhost";
$usuario = "cualquiera";
$clave = "cualquiera";
$tabla = "alquileres";

$localidad = $_GET["localidad"];

$conexion = mysql_connect($servidor,$usuario,$clave) or die(mysql_error()); 

mysql_select_db($basededatos, $conexion) or die(mysql_error()); // Conexion a la base de datos. 

$csql = utf8_decode("select * from alquileres where poblacion like '$localidad'");

$res = mysql_query($csql,$conexion)or die(mysql_error());// Almacenamos el resultado de la consulta

//CREAMOS EL XML
//ISO-8859-1 - UTF-8;
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";

echo "<alquileres>";//Apertura del XML

while($val =mysql_fetch_array($res)){ // Aray con los valores encontrados
echo '<alquiler id="' . $val[id] . '" localidad="' . $val[poblacion] .'" referencia="' . $val[referencia] . "\" tipo_inmueble=\"" . nl2br($val[tipo_inmueble]) . "\" >" .$val[caracteristicas] . '</alquiler>';
} 

echo "</alquileres>";//Cierre del XML
?> 


Bueno, espero que podáis ayudarme ...
Gracias

Por AguaRas

93 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Dic 2005 09:38 pm
quita lo del system.usecodepage

el asunto es que el utf8_decode, lo haces donde no debes...quitalo de donde lo tienes ahora y prueba ponerlo en el resultado de la consulta,por ejemplo:

echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";

echo "<alquileres>";//Apertura del XML

while($val =mysql_fetch_array($res)){ // Aray con los valores encontrados
echo '<alquiler id="' . $val[id] . '" localidad="' . $val[poblacion] .'" referencia="' . utf8_decode($val[referencia]) . "\" tipo_inmueble=\"" . nl2br($val[tipo_inmueble]) . "\" >" .$val[caracteristicas] . '</alquiler>';
}

echo "</alquileres>";//Cierre del XML


perdon por no poner las etiqetas del code, pero no soportan las negritas

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 07 Dic 2005 11:24 am
Pues va a ser que no ....
He hecho lo recomendado en la espuesta anterior ... pero no.

¿Alguien tiene otra posibilidad?

Gracias

Por AguaRas

93 de clabLevel



 

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.