Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/10/2014, 22:39
Luis Galdames
 
Fecha de Ingreso: agosto-2007
Ubicación: Osorno, Chile
Mensajes: 40
Antigüedad: 17 años, 3 meses
Puntos: 0
Pregunta como evitar descargar archivo descargado previamente?

Hola
Mi problema es que quiero que mi usuario descargue una aplicación para ingresar a los
distintos sistemas de mi sitio web.
Conseguir hacer que esa aplicación se descargue no me presentó ningún problema lograr.
Pero cuando ingreso de nuevo a ese enlace, entonces vuelve a descargar el mismo archivo nuevamente, re-nombrando con un numero cada vez.
Eso significa que mi cliente va a llenar su disco duro con descargas de la misma aplicación eternamente.
Entonces estoy intentando hacer que el programa de descarga lea el disco duro para saber si ya fue descargado previamente y caso no lo encuentre, proceda a descargarlo.
Pero aquí se me presenta el problema.
He encontrado como posible solución en PHP las funciones is_file() y la file_exists()
He construido el siguiente código intentando resolverlo, pero no me funciona como esperado.

$file = '\archivo.exe';
$dir = 'c:\Users\admin\Downloads';
$dir1 = 'c:\Usuarios\admin\Descargas';

//intentando primero con la función is_file()
$file_location = $dir.$file;
if (!is_file($file_location)){
echo 'Could not get that file! '.$file_location.'<br>';
} else {
die('Could YES get that file! '.$file_location).'<br>';
}
$file_location1 = $dir1.$file;
if (!is_file($file_location1)){
echo ('Could not1 get that file! '.$file_location1).'<br>';
} else {
die('Could YES1 get that file! '.$file_location1).'<br>';
}

//intentando ahora con la función file_exists()
$file_location = $dir.$file;
if (!file_exists($file_location)){
echo 'Could file_exists not get that file! '.$file_location.'<br>';
} else {
die('Could file_exists YES get that file! '.$file_location).'<br>';
}
$file_location1 = $dir1.$file;
if (!file_exists($file_location1)){
echo ('Could file_exists not1 get that file! '.$file_location1).'<br>';
} else {
die('Could file_exists YES1 get that file! '.$file_location1).'<br>';
}

//aqui la rutina de descarga porque no lo encuentra, es su primera vez.

El hecho es que ninguna de esas dos rutinas logra el objetivo de detener la ejecución porque el archivo si existe en el disco duro. Y yo sé que si existe en esa carpeta.
Intenté usando el path del archivo tanto en español como en inglés, pero no funciona.
También intenté colocando la unidad como c: y como C: y nada. No lo encuentra.

Podría alguien por favor darme una ayuda para resolver mi problema?
Muchas gracias!