Comunidad de diseño web y desarrollo en internet online

AMFPHP 1.2.5 problema con tildes

Citar            
MensajeEscrito el 27 Abr 2007 06:08 pm
Hola amigos del clab , estoy haciendo en pequeño proyecto con AMHPHP, con un administrador en flash.

Detallo el problema

-Al guardar datos desde flash hacia la base datos, se guarda correctamente, es decir cuando veo la base de datos desde el dbDesignar o mysqlQuery , los datos estan guardado con tildes(correcto).

-Luego al mostrar los datos tambien con una funcion AMFPHP los acentos me muestran con cuadrito, antes System.useCodepage = true; :( pero ya no funciona.

-Tambien he utilizado escape/unescape, pero tampoco funciona.

-Estoy utilizando PHP 4.3 Flash8 y AMFPHP 1.2.5

espero su valiosa ayuda amigos....
gracias
atte
Saitape
:D

Por saitape

113 de clabLevel

1 tutorial

Genero:Masculino  

peru

firefox
Citar            
MensajeEscrito el 30 Abr 2007 06:29 am
Cuando vayas a pasar cualquier dato de PHP a flash codificalos en UTF-8 para que te muestre correctamente los acentos y caracteres especiales en flash .. la funcion en php es utf8encode(); .. metete a la pagina de php (php.net) y lee un poco sobre esta si no sabes utilizarla.

NO uses el System.useCodepage = true; ... Si tratas siempre con codificacion UTF-8 no hace falta hacer estos "hacks".

Por vitillo

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Abr 2007 03:17 pm
tienes razon amigo, si entiendo esa parte del utf-8, el probelma es en donde encuantro esas lineas para agregarlo, es decir dentro del la carpeta amfphp o desde mis servicios que he creado

podrias darme un ejemplo flash php

Por saitape

113 de clabLevel

1 tutorial

Genero:Masculino  

peru

firefox
Citar            
MensajeEscrito el 30 Abr 2007 05:44 pm
Hola amigos del clab , aun no resuelvo mi problema con el amfphp, explicare mejor el error que ocurre en mis consultas,

error las tildes y acentos no se muestra solo se ve un cuadrito, me respondieros que utilize utf8 para codificar mis datos

En html se como hacerlo, pero en flash no tengo idea

presento mis codigos:

codigo php en el services de amfphp

Código :

function query($sql){
         $conexion= mysql_connect("localhost","samikusi","prueba");
           mysql_select_db("samikusi");
         $result = mysql_query($sql,$conexion);
         mysql_close($conexion);
                        //retorna los datos
         NetDebug::trace($sql);
         NetDebug::trace(mysql_error());
         return $result;
      }


codigo flah para obtener los datos:

Código :

import mx.remoting.NetServices;
import mx.remoting.Connection;
mx.remoting.debug.NetDebug.initialize();
NetServices.setDefaultGatewayUrl("http://localhost/admin/amfphp/gateway.php");
conexion = NetServices.createGatewayConnection();
capturaRespuesta = new Object();
servicio = conexion.getService("administrador",capturaRespuesta);
   capturaRespuesta.onStatus = function (data){
   trace("error:" +data.description);
}
var id_noti:Array = new Array();
capturaRespuesta.mostrar_noticias_Result = function(data){
   var noticias:Array = new Array();
   if (data){
      if (data.getLength()){
         for (i=0; i<data.getLength();i++){
            noticias.addItem({Titulo:data.getItemAt(i).NOTI_TITULO,Descripcion:unescape(data.getItemAt(i).NOTI_DESCRIPCION),Fecha:data.getItemAt(i).NOTI_FECHA});
         }
         contenido_mc.noticias_mc.grid_Noticias.dataProvider = noticias;
         contenido_mc.noticias_mc.grid_Noticias.getColumnAt(0).width=200;
         contenido_mc.noticias_mc.grid_Noticias.getColumnAt(1).width=460;
         contenido_mc.noticias_mc.grid_Noticias.getColumnAt(2).width=100;
      } else {
         estado_txt.text="No hay registro que mostrar";
      }
   } else {
         estado_txt.text="Ocurrio un error en la consulta";
   }
} 


*los datos llegan correctamente, ademas dentro de la base de datos , estos se visualizan bien , con acentos y demas.

el probema es cuando los muestra en el datagrid o campo de textos, las tildes no se muestran,
no se donde ponder el famoso utf-8.

ojala me haya expresado mejor, antemano gracias
atte
saitape

Por saitape

113 de clabLevel

1 tutorial

Genero:Masculino  

peru

firefox
Citar            
MensajeEscrito el 30 Abr 2007 07:09 pm
Ya revisaste que tu gateway tenga la siguiente linea!!!
$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

msie
Citar            
MensajeEscrito el 02 May 2007 06:33 am
Yo lo he hecho de la siguiente manera.. el fetch en php (cuando obtengo los datos de la base de datos):

while ($row = mysql_fetch_object($result)) {

// UTF-8 encode para Flash
$tmp = utf8_encode($row->nombre);
$row->nombre = $tmp;

$aSeries[] = $row;
}

Fijate que cada row lo codifico en utf8, de esa manera me funciona correctamente. Olvida la ultima linea, la utilizo para meter cada row de la base de datos en un array y luego paso el array directamente a flash. ^^

Por vitillo

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 May 2007 04:28 pm
gracias ya lo he solucionado,
he agregado

$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");

y listo

gracias a todos

Por saitape

113 de clabLevel

1 tutorial

Genero:Masculino  

peru

firefox
Citar            
MensajeEscrito el 18 May 2007 02:05 pm
Gracias a Saitape por preguntar esto . y gracias a ramiro_olvera por responder. me han solucionado el problema :)

Por Zequi

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 May 2007 04:18 pm
que tal....

Tengo una inquitud, es posible que una ñ o áéíóú se pueda ver en el sujeto de un correo sin que salga esto ñ .... gracias por la ayuda

Atentamente,
Sebastian Garcia
:D

Por Chevy

165 de clabLevel

1 tutorial

Genero:Masculino  

Ecuador

firefox

 

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