Ver Mensaje Individual
  #5 (permalink)  
Antiguo 29/01/2005, 17:44
amj
 
Fecha de Ingreso: marzo-2002
Ubicación: Manizales
Mensajes: 152
Antigüedad: 22 años, 1 mes
Puntos: 1
lo cambié por este y resuelto el problema, pero me queda la duda de como hacerlo tal cual como en gmail, sí alguien sabe se lo agradecería.
Código:
<?
/*
mupload.php
Programa para hacer múltiple upload con la técnica usada por google para los attachment
Autor: AMJ [email protected] http://www14.brinkster.com/alejomj2
Fecha: 29/01/2005
*/
/*for($i=0;$i<5;$i++)
  {
    if(!empty($userfile_name[$i]))
     if(copy ($userfile[$i],"$DOCUMENT_ROOT$path$userfile_name[$i]"))
        echo "Se copió el archivo $userfile_name[$i]<br>";
     else
        echo "El campo ".($i+1)." estaba vacío o no se pudo copiar";
    else
     echo "El campo ".($i+1)." estaba vacío o no se pudo copiar<br>";
  }
*/
$form = array_keys($_FILES);
$post = array_keys($_POST);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Multiple upload</TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="AMJ [email protected] http://www14.brinkster.com/alejomj2">
<META NAME="Keywords" CONTENT="upload multiple">
<META NAME="Description" CONTENT="formulario de upload similar al de google">
<style>
.upload {
	border: 0px none;
	width: 0px;
	background: white;
	cursor: hand;
	color: blue;
	text-decoration:underline;
}
.ioculto {
	visibility: hidden;
	display: none;
}
</style>

<script language="javascript">
function filer(id) {
	var ihidden = "<input type='hidden'>";
	if (document.layers) {
		eval("document.layers."+id+".document.write(ihidden);");
		eval("document.layers."+id+".document.close();");
		eval("document.layers."+id+"k.document.write();");
		eval("document.layers."+id+"k.document.close();");
	} else if (document.all) {
		eval(id+".innerHTML = ihidden;");
		eval(id+"k.innerHTML = '';");
	}
}
function filew(ifile,i) {
	ifile.className = "ioculto";
	var upload = "<span id='f"+i+"'><input type='file' name='f"+i+"' class='upload' onchange='filew(this,"+(1*i+1)+")'></span><span id='file"+(1*i+1)+"'></span>";
	var id = ifile.name;
	var data = "<span id='"+id+"k'>"+ifile.value+" <a href='#' style='cursor:hand' onclick=\"filer('"+id+"')\">Borrar</a><br></span>";
	if (document.layers) {
		document.layers.files.document.write(data);
		document.layers.files.document.close();
		eval("document.layers.file"+i+".document.write(upload);");
		eval("document.layers.files.document.close();");
	} else if (document.all) {
		files.innerHTML += data;
		eval("file"+i+".innerHTML += upload;");
	}
}
</script>
</HEAD>

<BODY>
<h1>Múltiple upload</h1>
Este es un ejemplo de hacer un múltiple upload similar al de google para hacer attachments.<br>
Autor: <a href="http://www14.brinkster.com/alejomj2">AMJ [email protected]</a><br>
Fecha: 29/01/2005
<form name="f" enctype="multipart/form-data" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="200000">
<?
if(count($form)) {
	echo "Archivos enviados<br>";
	for($i=0;$i<count($form);$i++)
		if (is_uploaded_file($_FILES[$form[$i]]['tmp_name'])) {
			copy($_FILES[$form[$i]]['tmp_name'], "./archivos/".$_FILES[$form[$i]]['name']);
			echo $_FILES[$form[$i]]['name']."<br>";
		}
	echo "<hr>";
}
if(count($post)) {
	echo "Datos enviados<br>";
	for($i=0;$i<count($post);$i++)
		echo "<b>$post[$i]<b><br>";
}
?>
<table border="1" width="100%">
<tr><td valign="top" width="25%">Agregar Archivo <span id="file1"><span id="f1"><input type="file" class="upload" name="f1" onchange="filew(this,2)"></span></span><span id="file2"></span>
</td><td>&nbsp;<br><span id="files"></span><br>&nbsp;</td>
</tr>
</table>
<a href="#" style="cursor:hand" onclick="document.f.submit()">Subir Archivos</a>
</form>

</BODY>
</HTML>
__________________
"SJ