Saludos, Necesito ayuda urgente he hecho un upload de archivos en flash, de hecho ya esta funcionando, me falta, además, del nombre y tamaño del archivo, añadir una descripción del mismo, y me estoy volviendo loco ya intentando cosas, mando el código flash y php para ver si me podéis ayudar, gracias de antemano.
------------- flash ---------
import flash.events.DataEvent;
import flash.net.FileReference;
var fileUpload:FileReference = new FileReference();
var path:String = "http://www.plusapl.net/uploadDir"
var escucha:Object = {};
var fileTypes:Array;
//var Desc:String = textdesc.text
var getFile:String; function init() {
System.security.allowDomain(path);
load_mc._visible = false;
fileTypes = [{description:"Archivos de Imagen", extension:"*.jpg;*.gif;*jpeg;*.png;*.pdf", macType:"JPEG;jp2_;GIFF"}];
upload_btn.label = "Upload File";
down_btn.label = "Download File";
upload_btn.addEventListener("click", doUpload);
down_btn.addEventListener("click", doDownload);
fileUpload.addListener(escucha);
escucha.onSelect = doSelect;
escucha.onComplete = doComplete;
escucha.onCancel = doCancel;
escucha.onProgress = doProgress;
data_mc.addEventListener("change", setDownload);
makeList();
}
function doComplete() {
load_mc.barra_mc._xscale = 0;
load_mc.label_txt.text = "Transfer Complete";
makeList();
}
function doProgress(archivo:FileReference, bLoaded:Number, bTotal:Number) {
var porcentaje = Math.round((bLoaded*100)/bTotal);
load_mc.label_txt.text = porcentaje+"% of File "+archivo.name;
load_mc.barra_mc._xscale = porcentaje;
}
function doCancel() {
trace("Cancel by user");
}
function doSelect(archivo:FileReference) {
load_mc._visible = true;
load_mc.barra_mc._xscale = 0;
fileUpload.upload(path+"/uploadFile.php");
}
function doDownload() {
if (getFile != undefined) {
fileUpload.download(path+"/"+getFile);
}
}
function doUpload(event) {
fileUpload.browse(fileTypes);
}
function setDownload(c:MovieClip) {
getFile = c.target.selectedItem.Name;
}
function makeList() {
data_mc.removeAll();
var list_xml:XML = new XML();
list_xml.ignoreWhite = true;
list_xml.load(path+"/lista.php");
list_xml.onLoad = function() {
var nodos = this.firstChild.childNodes;
for (var a in nodos) {
var size:Number = Math.ceil((nodos[a].attributes.tamanio/1024));
var Description:String = txtdesc.text((nodos[a].attributes.description));
data_mc.addItem({Name:nodos[a].attributes.name, Description:description, Size:size+" Kb"});
}
};
}
init();
--------PHP lista.
<?php
$No=array(".","..","lista.php","uploadFile.php");
$fp=opendir(".");
echo "<?xml version='1.0' ?".">";
echo "<files>";
while (false!==($file=readdir($fp))){
if ((!in_array($file,$No))&&(is_readable($file))){
echo "<file name='".utf8_encode($file)."' tamanio='".filesize($file)."' />";
}
}
closedir($fp);
echo "</files>";
?>
--------------------PHP uploadfile
<?php
$uploadDir = './';
$uploadFile = $uploadDir . $_FILES['Filedata']['name'];
move_uploaded_file($_FILES['Filedata']['tmp_name'], $uploadFile);
?>
Es muy simple, funciona todo muy bien, lo único añadir la descripción del archivo, gracias de antemano y en lo que yo pueda ayudar, cuenta con ello, mi correo, [email protected], gracias.