Crea una nueva archivo.fla
pon esto en el primer frame
Código :
// Para cargar los datos desde el php, usaremos el objeto apropiado para ello
// Dicho objeto es LoadVars; ver referencia en la ayuda de flash.
//---------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------
// Borrar una fila
var delete_lv:LoadVars = new LoadVars();
function deleteDatos(id:Number):Void{
delete_lv.id = id;
delete_lv.action = "eliminar";
delete_lv.sendAndLoad("libreta.php", delete_lv, "POST");
delete_lv.onLoad = function(exito:Boolean):Void{
if(exito){
init(); //
//mybox_txt.htmlText = "<item>Registro " + id + " ha sido borrado con exito</item>";
}else{
mybox_txt.htmlText = "<item>Error: el registro , no ha podido ser borrado</item>";
}
}
}
//---------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------
//Cargar datos
var num_datos:Number = 0; //Numero de registros
var datos_lv:LoadVars = new LoadVars();
function loadDatos():Void{
// Declaramos los datos que vamos a enviar
datos_lv.action = "mostrar";
//El sendAndLoad, enviara las variables, y recibira los datos
// Enviamos los datos a libreta.php, mediante POST, el objeto destino es el mismo que el de envio :D
datos_lv.sendAndLoad("libreta.php", datos_lv, "POST"); //
mybox_txt.htmlText = "<item>Cargando datos...</item>";
datos_lv.onLoad = function(exito:Boolean):Void{
if(exito){
num_datos = Number(datos_lv.num_datos)
if(num_datos>0){
mybox_txt.htmlText = "<titulo>Se encontraron " + num_datos + " registros.</titulo><br>";
for(var i=0; i<num_datos; i++){
// Lo que hacemos es recibir el dato que nos envio el php 'datos_lv.id_str'
// con split(","), lo que hacemos es convertirlo a un array
// Dicho array lo puedes mostrar directamente, o almacenarlo
// en este caso lo muestro directamente, pero pongo , como almacenarlo y tenerlo disponible
//---------------------------------------------
//id_array[i] = datos_lv.id_str.split(",")[i]; //Asi lo almaceno
//---------------------------------------------
mybox_txt.htmlText += "<item>Id: " + (i+1) + " ";
mybox_txt.htmlText += "<a href='asfunction:_root.deleteDatos," + Number(datos_lv.id_str.split(",")[i]) + "'>Borrar</a> ";
mybox_txt.htmlText += datos_lv.nombre_str.split(",")[i] + " ";
mybox_txt.htmlText += datos_lv.imagen_str.split(",")[i] + "</item>";
}
}else{
mybox_txt.htmlText = "<item>No hay ningun dato por mostrar.</item>";
}
}else{
mybox_txt.htmlText = "<item>Error, no se cargaron los datos</item>";
}
}
}
//---------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------
//Estilos css
var estilos:String = "";
estilos += "titulo{color:#333333; font-family: Verdana; font-size: 18px; textAlign:center; }";
estilos += "id_item{color:#003366; font-family: Verdana; font-size: 11px; fontWeight:bold; }";
estilos += "item{color:#003366; font-family: Verdana; font-size: 12px; textIndent:5; }";
estilos += "a:link{color:#990000; font-family: Verdana; font-size: 12px; textDecoration:underline; }";
estilos += "a:hover{color:#cccccc; font-family: Verdana; font-size: 12px; textDecoration:underline; }";
var mycss:TextField.StyleSheet = new TextField.StyleSheet(); // El objeto css
mycss.parseCSS(estilos);
function init():Void{
// Creamos una caja de texto, para volcar los datos en ella
_root.createTextField("mybox_txt", 2, 20, 20, 500, 200);
with(_root.mybox_txt){
border = true;
multiline = true;
html = true;
styleSheet = mycss;
}
//---------------------------------------------------------------------------------------
loadDatos(); //mandamos cargar los datos
//---------------------------------------------------------------------------------------
}
//---------------------------------------------------------------------------------------
init(); // Inicializamos la pelicula
Y en el php
Código :
<?php //Poner el tag de apertura de script php, completo !!
//---------------------------------------------------------------------------------------
// Esto deberia de ir en un archivo externo y en una carpeta no publica
// Datos de conexion
$host = "localhost";
$user = "root";
$passw = "";
$database = "db_autonova";
$tabla = "tbl_wallpapers";
$link = mysql_connect($host, $user, $passw) or die ("No se contecto al Servidor debido a:" + mysql_error());
mysql_select_db($database) or die ("No se pudo seleccionar la base de Datos debido a:" + mysql_error());
//---------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------
$action = "";
// Accion que vamos a ejecutar, este dato viene desde flash
// Verificamos que los datos vengan de POST, y que la variable no venga vacia.
if($_POST["action"] && !empty($_POST["action"])){
//Aqui van las validaciones de datos, para evitar inyecciones de codigo
$action = $_POST["action"];
}
//---------------------------------------------------------------------------------------
// Vamos a mostrar los resultados, para ello meteremos cada tipo de dato en una cadena de texto diferente.
// Uniremos cada dato, mediante comas "," ; así en flash , leerlo como un array.
// Ponemos tantos arrays como datos queramos ver.
$id_str = "";
$nombre_str = "";
$imagen_str = "";
$num_datos = 0;
//---------------------------------------------------------------------------------------
if ($action == "mostrar"){
$resultado = mysql_query("SELECT * FROM " . $tabla . " ORDER BY id");
$num_datos = mysql_num_rows($resultado);
while($columnas = mysql_fetch_array($resultado)){
// Todas las cadenas contendran al final, una coma de mas.
// Notese que ya no usamos los tags <font>, <u>, ya hay css y es más facil, pero desde flash
$id_str .= $columnas['id'] . ",";
$nombre_str .= $columnas['nombre'] . ",";
$imagen_str .= $columnas['imagen'] . ",";
} // End while
//Quitamos las comas sobrantes
$id_str = substr($id_str, 0, strlen($id_str)-1);
$nombre_str = substr($nombre_str, 0, strlen($nombre_str)-1);
$imagen_str = substr($imagen_str, 0, strlen($imagen_str)-1);
// Cuidado al "imprimir" los datos, no debe de haber espacios entre el nombre de variable y el signo "="
//print "&variable=" . $variable;
print "&num_datos=" . $num_datos;
print "&id_str=" . $id_str;
print "&nombre_str=" . $nombre_str;
print "&imagen_str=" . $imagen_str;
print "&"; // cerramos nuestra salida con un &
}
if($action == "eliminar"){
if($_POST["id"] && !empty($_POST["id"])){
$id_sel = $_POST["id"];
}
$resultado = mysql_query("DELETE FROM " . $tabla . " WHERE `id`='" . $id_sel . "' LIMIT 1");
if($resultado){
print "&status=exito";
}else{
print "&status=error";
}
}
mysql_close($link);
?>
pruebalo.
Para realizar las demas operaciones , como insertar datos o actualizar campos, solo sigue la lógia anterior.
Por ultimo, te recomiendo que te des una vuelta por la seccion e tutoriales y revises los de Loadvars
Tutorial de LoadVars 1Tutorial de LoadVars 2Como veraz cambie los campos. primero entiende la logica del codigo, y luego adaptalo a tus necesidades.
Saludo,s nos dices que paso