Les comento en breve la situación:
Estoy tratando de armar en mi web un espacio donde pueda subir y bajar archivos desde cualquier PC.
El código que uso es el siguiente:
Código PHP:
<?php
$files = glob("archivos/*.*");
if(count($files) > 0)
{
foreach($files as $file)
{
echo "<a href=\"".$file."\">".$file."</a><br/>";
}
}
else
{
echo 'La carpeta esta vacía';
}
?>
Mi navegador intenta abrir el archivo en una pestaña nueva.
Bueno, si fuesen imagenes y archivos pdf o word, etc, no tendría problema porque puedo descargarlos de todas formas. Pero con otros tipos de archivos u otras extensiones comienzan los problemas de que no puede abrir el archivo ni puedo descargarlo.
Después de buscar por la web, encontre una pequeña solución, que si comprimía el archivo en un zip, podría descargarlo tan solo haciendo click en el link.
Entonces armé el siguiente código, pero no llegue a nada bueno. Se me genera un zip que dice por ej: archivo.ndtzip y al hacer clic en el link me da error 404.
Código PHP:
<?php
$files = glob("archivos/*.*");
if(count($files) > 0)
{
foreach($files as $file)
{
$zip = new ZipArchive();
$filename = $file.zip;
if ($zip->open($filename, ZipArchive::CREATE)!==TRUE) {
exit("cannot open <$filename>\n");
}
$zip->addFile("$file");
echo "Cantidad de Ficheros: " . $zip->numFiles . "\n <br />";
echo "Estado:" . $zip->status . "\n <br />";
$zip->close();
echo "<a href=\"".$file."\".zip>".$file."</a><br/>";
}
}
else {
echo 'Error creando '.$filename;
}
?>
Dónde la estoy pifiando ?. Quizá sea un error tonto porque ya estoy cansado, llevo horas intentando hacer funcionar esto.
Les dejo un saludo y gracias de antemano.