Envio de ficheros
Publicado por Javier (49 intervenciones) el 07/02/2013 12:20:48
Hola.
Estoy intentando que desde un procedimiento php me envie un fichero csv al pc desde el servidor.
Cuando pulso un boton en el html llamo a una funcion javscript que hace una llamada ajax a php.
El proceso es este:
Decir que el fichero existe o se ha creado en el codigo anterior a este.
No da error o no lo veo, aparenteme procesa todo pero no me sale ninguna ventana en la que me pida donde guardarlo o un aviso de que hay un fichero por descargar.
¿Que me falta?.
Un saludo,
Javier.
Estoy intentando que desde un procedimiento php me envie un fichero csv al pc desde el servidor.
Cuando pulso un boton en el html llamo a una funcion javscript que hace una llamada ajax a php.
El proceso es este:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//Descarga del fichero
$root = "../temp/";
$file = basename($ficherocsv);
$path = $root.$file;
$type = '';
echo ("El path del dichero es:".$path);
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";
//echo ("PASO por aqui");
}
// Definir headers
header("Content-Type: $type");
header("Content-Disposition: attachment; filename=\"$path\"");
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . $size);
// Descargar archivo
readfile($path);
} else {
die("El archivo no existe.");
}
Decir que el fichero existe o se ha creado en el codigo anterior a este.
No da error o no lo veo, aparenteme procesa todo pero no me sale ninguna ventana en la que me pida donde guardarlo o un aviso de que hay un fichero por descargar.
¿Que me falta?.
Un saludo,
Javier.
Valora esta pregunta


0