Cita:
Iniciado por luis010182
Podrias hace algo asi
Código PHP:
#archivo : descarga.php
#la varible $datos contiene los datos del usuario que se extrae de la base
# el campo file de la base deberia tenes la ruta dentro del directorio de descarga.
# el campo estado debe ser 1 por dafault
if( $dato[estado]==1 ){
if (!isset($dato['file']) || empty($dato['file'])) {
exit();
}
#carpera de descarga
$root = "contenedor/";
$file = basename($dato['file']);
$path = $root.$file;
$type = '';
if (is_file($path)) {
$size = filesize($path);
if (function_exists('mime_content_type')) {
$type = mime_content_type($path);
} else if (function_exists('finfo_file')) {
$info = finfo_open(FILEINFO_MIME);
$type = finfo_file($info, $path);
finfo_close($info);
}
if ($type == '') {
$type = "application/force-download";
}
header("Content-Type: $type");
header("Content-Disposition: attachment; filename=$file");
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . $size);
# descarga archivo
readfile($path);
##################
# Aca actualizas la base.
# Haces un update del campo de estado ( de 1 a 0 ) ;
##################
} else {
die("El archivo no exite. ");
}
}
else{
echo ' El archivo ya se descargo';
}
Espero que te sirva
Me olvide el link que le mandas al usuario por mail seria algo asi.
descarga.php?id_usuario=3333
El cual te sirve para consultar los datos del usuario.