Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/04/2008, 11:17
Avatar de yoseman
yoseman
 
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 21 años, 2 meses
Puntos: 5
Re: Problema con insertar en MySQL

De todas formas no es necesario volcar los datos de ls query a un fichero xml directamente, puedes crearte un php que directamente lo construya y lees lo que devuelve el php con un objeto XML de flash, asi te ahorras un paso.

quiero decir algo asi:
Código PHP:
<?=('<?xml version="1.0" encoding="iso-8859-1"?>'."\n")?>
<listado>
<?php        // INSERTAR UNA PELICULA
// tomo los datos enviados por el archivo swf

$id $_POST['id'];
$titulo $_POST['titulo'];
$descripcion $_POST['descripcion'];
$imagen $_POST['imagen'];
$estreno $_POST['estreno'];
$genero $_POST['genero'];
$total $_POST['total'];
$cant_alq $_POST['cant_alq'];


$sql"INSERT INTO 'peliculas' (id,titulo,descripcion,imagen,estreno,genero,total,cant_alq) VALUES ('','".$titulo."','".$descripcion."','".$imagen."','".$estreno."','".$genero."','".$total."','".$cant_alq."')";

require(
"config.php");

$conex= @mysql_connect($server,$user,$pass);

if (!
$conex
    
$msj_error "No se pudo conectar con la base de datos";
else 
{
    
mysql_select_db($db);
    
$resultmysql_query($sql,$conex);
    if (
$result)
    { 
        
//Excepcion del INSERT, comparamos result por si la inserción fue correcta :P
        
$msj_error "La insercion se ha realizado correctamente";
        if(!
$fp=fopen("peliculas.xml","w+")) 
            
$msj_error="No se ha podido abrir el fichero XML";
        else 
        {
            
$sql "SELECT * FROM 'peliculas' ORDER BY 'id'";
            
$resultmysql_query($sql,$conex); 
            if (!
$result)
                
$msj_error "La insercion fue realizada, pero no se pudo realizar la consulta";
            else 
            {
                
/*Escribo la cabecera del xml
                Véase que \r (retorno de carro) en octal es 015 y \n (nueva linea) en octal es 012*/
                
while($row=mysql_fetch_array($result))  
                {
                    
/*estructura del nodo*/
                    
echo ('<registro id="'.$row['id'].'" titulo="'.$row['titulo'].'" descripcion="'.$row['descripcion'].'" imagen="'.$row['imagen'].'" estreno="'.$row['estreno'].'" genero="'.$row['genero'].'" total="'.$row['total'].'" cant_alq="'.$row['cant_alq'].'" />'."\n");

                }
            if(!
fclose($fp)) 
                
$msj_error "No se ha podido cerrar el fichero XML"
            }
        }   
    } 
    else  
    {
    
$msj_error "No se ha podido insertar el registro";
    }

    
mysql_close($conex); 

}
// cierro la base de datos

echo ('<error id="'.$msj_error.'" />'."\n");

?></listado>
La diferencia estaría en que en vez de volcar a un xml los datos de la select es el script php el que devuelve como fichero xml los datos, además de los codigo de error que hubiese en la ultima etiqueta.

no sé si me explico...

Tu entonces desde flash haces un sendAndLoad al script en php y recibes los datos como si los hubieses recibido del fichero que antes creabas...

Pero bueno el proyecto ya lo conoces tu más que yo lo mismo meto la pata.

Un saludo...
__________________
[+]
[+]

Última edición por yoseman; 02/04/2008 a las 11:39