Foros del Web » Creando para Internet » Flash y Actionscript »

Flex 3 y PHP

Estas en el tema de Flex 3 y PHP en el foro de Flash y Actionscript en Foros del Web. Buenas, os comento. Estoy intentando enviar contenido XML a un script en php que se encargará de guardarlo. Este es el código: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 21/07/2009, 18:28
 
Fecha de Ingreso: mayo-2008
Ubicación: Murcia, España
Mensajes: 313
Antigüedad: 16 años, 6 meses
Puntos: 5
Flex 3 y PHP

Buenas, os comento.

Estoy intentando enviar contenido XML a un script en php que se encargará de guardarlo. Este es el código:

Código actionscript:
Ver original
  1. var ur:URLRequest = new URLRequest("../php/save_noticia_xml.php");
  2. //ur.contentType = "text/xml";
  3.            
  4. var uv:URLVariables = new URLVariables();
  5. uv.contentEs = xmlItems[0].toString();
  6. uv.contentEn = xmlItems[1].toString();
  7. uv.contentPt = xmlItems[2].toString();
  8.            
  9. ur.data = uv;
  10.            
  11. ur.method = "POST";
  12.            
  13. //trace(uv.contentEs);
  14.            
  15. var ul:URLLoader = new URLLoader(ur);

Funciona perfectamente, pero cuando abro los ficheros que el php me ha generado, me encuentro esto:

Código HTML:
<noticia id=\"1\" titulo=\"Mayo 2007\"...
en lugar de esto:

Código HTML:
<noticia id="1" titulo="Mayo 2007"
Alguien sabe por qué?
  #2 (permalink)  
Antiguo 22/07/2009, 07:51
Avatar de Sergestux  
Fecha de Ingreso: agosto-2007
Ubicación: Tapachula
Mensajes: 1.218
Antigüedad: 17 años, 3 meses
Puntos: 20
Respuesta: Flex 3 y PHP

Parece ser cosa del script php, obviamente se tendria que ver el codigo que usas para generar el XML.

Con que abres dichos archivos?
  #3 (permalink)  
Antiguo 22/07/2009, 09:00
Avatar de ramoncito  
Fecha de Ingreso: febrero-2003
Ubicación: Viña del Mar
Mensajes: 224
Antigüedad: 21 años, 9 meses
Puntos: 10
Respuesta: Flex 3 y PHP

Apoyo la teoria, muestranos las lineas en donde generas este texto:

<noticia id=\"1\" titulo=\"Mayo 2007\"...
__________________
:pensando: Ramon Martinez... Chile :adios:
  #4 (permalink)  
Antiguo 22/07/2009, 10:28
 
Fecha de Ingreso: mayo-2008
Ubicación: Murcia, España
Mensajes: 313
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: Flex 3 y PHP

Código PHP:
$contentEs $_POST['contentEs'];

$fpEs fopen("../../hola.xml""w");
fwrite($fpEs$contentEs);
fclose($fpEs); 
No se... lo mas sencillo del mundo pienso ;)
  #5 (permalink)  
Antiguo 22/07/2009, 10:40
Avatar de Sergestux  
Fecha de Ingreso: agosto-2007
Ubicación: Tapachula
Mensajes: 1.218
Antigüedad: 17 años, 3 meses
Puntos: 20
Respuesta: Flex 3 y PHP

Entonces muestra donde generas el codigo AS3, donde asignas el valor a la variable xmlItems.

Tal vez puedas solucionar tu problema mas facilmente si en php usas stripslashes, o str_replace
  #6 (permalink)  
Antiguo 22/07/2009, 10:47
 
Fecha de Ingreso: mayo-2008
Ubicación: Murcia, España
Mensajes: 313
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: Flex 3 y PHP

Código PHP:
$lastBackslashPos strpos ($contentEs"\\");
while(
$lastBackslashPos >0){
    
$contentEs substr($contentEs,0,$lastBackslashPos)
    .
substr($contentEs,$lastBackslashPos+1,strlen($contentEs));
    
$lastBackslashPos strpos ($contentEs"\\");

Lo he solucionado con esto que he estado buscando y parece ser que le pasa a mas de uno.

Esta es la fuente: http://johannesluderschmidt.de/?p=127

De todas formas, alguien sabe por qué es?, es problema del PHP
  #7 (permalink)  
Antiguo 22/07/2009, 11:39
 
Fecha de Ingreso: mayo-2008
Ubicación: Murcia, España
Mensajes: 313
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: Flex 3 y PHP

Bueno, para quien le interese, he hablado con un profesor de PHP y me ha dicho que ha unas funciones que se llaman urlEncode y urlDecode que sirven para codificar todo este tipo de parámetros, codifica antes de enviar, y decodifica al recibir, así evita el tener que remarcar las comillas ;)
  #8 (permalink)  
Antiguo 22/07/2009, 12:15
Avatar de Sergestux  
Fecha de Ingreso: agosto-2007
Ubicación: Tapachula
Mensajes: 1.218
Antigüedad: 17 años, 3 meses
Puntos: 20
Respuesta: Flex 3 y PHP

Y por que no intentaste con la funcion str_replace, unicamente sustiyendo los "\\" por cadenas vacia, de la siguiente manera


Código php:
Ver original
  1. $contentEs = $_POST['contentEs'];
  2. $contentEs =str_replace("\\", "", $contentEs);  //Eliminar las diagonales inversas
  3.  
  4. $fpEs = fopen("../../hola.xml", "w");
  5. fwrite($fpEs, $contentEs);
  6. fclose($fpEs);
  #9 (permalink)  
Antiguo 22/07/2009, 15:50
 
Fecha de Ingreso: mayo-2008
Ubicación: Murcia, España
Mensajes: 313
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: Flex 3 y PHP

No lo intenté la verdad, pero bueno, imagino que funcionará, el caso que funcioa también lo que encontré por ahí, no pienso tocarlo mas jajaja

Gracias por el aporte
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 17:08.