Me gustaría incluir una barra de carga o el porcentaje de carga al cargar mis archivos a un ftp.
Quiero evitar que se use flash y aunque no sea algo muy "estético" me gustaría que fuera sencillo porque no domino mucho y lo necesito bastante urgente.
Así que si sabéis de algún link o solución que me pudiera servir os lo agradecería profundamente.
Muchas gracias de antemano por cualquier aportación!!
Os dejo lso códigos también. Este es subidaarchivos.php:
Código PHP:
<?php
session_start();
?>
<p>A continuación puede colgar sus archivos .pdf y .sit. Si necesita subir archivos con otras extensiones, puede hacerlo comprimiéndolos en un archivo .zip o .rar.</p>
<div id="formulario">
<form action="upload.php" method="post" enctype="multipart/form-data" name="form" style="text-align:center">
<label for="archivo">Archivo:</label>
<input name="archivo" type="file" id="archivo" />
<input name="boton" type="submit" id="boton" value="Enviar" />
</form>
Código PHP:
<?php
session_start();
$carpeta=$_SESSION['carpeta'];
$uploaddir = "archivos/". $carpeta . "/"; //falta ponerlo genérico
$uploadfilename = strtolower(str_replace(" ", "_",basename($_FILES['archivo']['name'])));
$uploadfile = $uploaddir.$uploadfilename;
$error = $_FILES['archivo']['error'];
$subido = false;
$mime_permitidos= array("application/zip", "application/x-compressed", "application/x-zip-compressed", "multipart/x-zip", "application/pdf", "application/x-pdf", "application/acrobat", "applications/vnd.pdf", "text/pdf", "text/x-pdf", "application/x-rar-compressed", "application/x-stuffit");
if(isset($_POST['boton']) && $error==UPLOAD_ERR_OK) {
if(!in_array($_FILES['archivo']['type'],$mime_permitidos)) {
$error = "El archivo debe ser del tipo PDF o ZIP.\n Si su archivo cumple con las especificaciones escríbanos a [email protected] para comunicarnos la incidencia e intentaremos solucionarla lo antes posible.";
}
elseif(preg_match("/[^0-9a-zA-Z_.-]/",$uploadfilename)) {
$error = "El nombre del archivo contiene caracteres no válidos, tales como carácteres alfanuméricos, tildes o la letra ñ.";
}
else { $subido = copy($_FILES['archivo']['tmp_name'], $uploadfile);
}
}
if($subido) {
echo "Archivo subido con éxito.\n Gracias por su colaboración.";
$mail=$_SESSION['email'];
$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain\r\n";
$mensaje = "El usuario " .$_SESSION['usuario']. ", con e-mail " .$_SESSION['email']. " ha colgado un nuevo archivo en la carpeta " .$_SESSION['carpeta']. " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());
$para = '[email protected]';
$asunto = 'Archivo subido al FTP';
mail($para, $asunto, utf8_decode($mensaje), $header);
}
else {
echo "Lo sentimos pero se ha producido un error en el proceso de subida de archivos: ".$error;
}
session_destroy();
?>