veran consegui de una pagina un sistema de upload (convencional) con un solo input para subir (un archivo a la vez), pero a este le agregue un codigo que estaba dando vueltas por internet y lo realice multi upload (sube mas de un archivo a la vez). Pero que pasa? que me sube el primer fichero, pero a los demas no lo toca haciendo que quede un "upload convencional"
aca el codigo
****************************
upload.php
Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>PHP upload</title>
<link href="estilo.css" rel="stylesheet" type="text/css" />
<script type="application/javascript" language="javascript">
var upload_number = 4;
function addFileInput() {
var d = document.createElement("div");
var file = document.createElement("input");
file.setAttribute("type", "file");
file.setAttribute("name", "archivo"+upload_number);
d.appendChild(file);
document.getElementById("moreUploads").appendChild(d);
upload_number++;
}
function setBlock() {
document.getElementById('moreLink').style.display = 'block';
}
</script>
</head>
<body>
<table width="413" border="2" cellspacing="0" cellpadding="0" bordercolor="#FF0000" align="center">
<tr>
<td width="413" height="40" class="titulo">PHP upload - unijimpe </td>
</tr>
<tr>
<td class="text">Por favor seleccione el archivo a subir:</td>
</tr>
<tr>
<form action="subearchivo.php" method="post" enctype="multipart/form-data">
<td class="text">
<input type="file" name="archivo" class="casilla" size="35" id="archivo" onChange="setBlock();" />
<div id="moreUploads"></div>
<div id="moreLink" style="display:none;"><a href="javascript:addFileInput();">Agregar mas</a></div>
<!--<input name="archivo" type="file" class="casilla" id="archivo" size="35" />-->
<div align="center"><input name="enviar" type="submit" class="boton" id="enviar" value="Upload File" />
<input name="action" type="hidden" value="upload" /></div> </td>
</form>
</tr>
<tr>
<td class="text" style="color:#990000"><?php echo $status; ?></td>
</tr>
<tr>
<td height="30" class="subtitulo">Listado de Archivos Subidos </td>
</tr>
<tr>
<td class="infsub">
<?php
if ($gestor = opendir('files')) {
echo "<ul>";
while (false !== ($arch = readdir($gestor))) {
if ($arch != "." && $arch != "..") {
echo "<li><a href=\"files/".$arch."\" class=\"linkli\">".$arch."</a></li>\n";
}
}
closedir($gestor);
echo "</ul>";
}
?> </td>
</tr>
</table>
</body>
</html>
subearchivo.php
Código PHP:
<?php
$status = "";
if ($_POST["action"] == "upload") {
// obtenemos los datos del archivo
$tamano = $_FILES["archivo"]['size'];
$tipo = $_FILES["archivo"]['type'];
$archivo = $_FILES["archivo"]['name'];
$prefijo = substr(md5(uniqid(rand())),0,6);
if ($archivo != "") {
// guardamos el archivo a la carpeta files
$destino = "files/".$prefijo."_".$archivo;
if (copy($_FILES['archivo']['tmp_name'],$destino)) {
$status = "Archivo subido: <b>".$archivo."</b>";
} else {
$status = "Error al subir el archivo";
}
} else {
$status = "Error al subir archivo";
}
}
?>
El ejemplo lo tengo andando, para ver como funciona http://radiolive.netau.net/hash/upload.php,
agradeceria a quien me pudiera ayudar en este proyecto