Seguro a muchos les va a servir. Todo va en la misma página.
upload.php
Código:
<script type="text/javascript">
var numero = 0;
// Funciones comunes
c= function (tag) { // Crea un elemento
return document.createElement(tag);
}
d = function (id) { // Retorna un elemento en base al id
return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
return evt.srcElement ? evt.srcElement : evt.target;
}
addField = function () {
container = d('file');
span = c('SPAN');
span.className = 'archivo';
span.id = 'archivo' + (++numero);
field = c('INPUT');
field.name = 'archivo[]';
field.type = 'file';
a = c('A');
a.name = span.id;
a.href = '#';
a.onclick = removeField;
a.innerHTML = 'Quitar';
span.appendChild(field);
span.appendChild(a);
container.appendChild(span);
}
removeField = function (evt) {
lnk = f(e(evt));
span = d(lnk.name);
span.parentNode.removeChild(span);
}
</script>
Código HTML:
<form action="" method="post" enctype="multipart/form-data">
<dl>
<dt><label for="to" ></label></dt>
<dt><label>Archivos Adjuntos:</label> <a href="#" onclick="addField()" >Añadir Archivo</a></dt>
<dd><div id="file"></div></dd>
<dd><input type="submit" value="upload" name="action" id="archivo" name="archivo" /></dd>
<input type="hidden" name="action" value="upload" />
</p>
</form>
Código PHP:
<?
if ($_POST["action"] == "upload") {
$tmpfile = $_FILES['archivo']['tmp_name'];
$tmpname = $_FILES['archivo']['name'];
$ftpuser = "usuario";
$ftppass = "password";
$ftppath = "ftp.miweb.com/public_html/fotos/";
$ftpurl = "ftp://".$ftpuser.":".$ftppass."@".$ftppath;
//places files into same dir as form resides
foreach ($_FILES["archivo"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
echo"$error_codes[$error]";
move_uploaded_file(
$_FILES["archivo"]["tmp_name"][$key],
$_FILES["archivo"]["name"][$key]) or die("Problems with upload");
}
}
}
?>
Me lo merezco... definitivamente
.
Saludos. Marx.