Generar CSV y mover a carpeta sin descargar PHP
Publicado por Ivan Joseph (3 intervenciones) el 23/08/2017 00:27:09
Buenas, quería realizar la pregunta de "¿cómo realizar la generación de un archivo CSV con información de la base de datos y que SIN DESCARGAR el CSV se almacene en un directorio que apenas se cree"
Este es el código actual
Este es el código actual
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?php
$Name = 'consigna.csv';//nombre del archivo que se generara
$FileName = "./$Name";// se le agrega "./" al princio del valor de la variable $name
$Datos = 'Número de consigna, Fecha actual, Subdirección, Delito, Área turnada, Objetivo, Descripción, Archivo';// aqui van lo encabezados de cada columna del csv
$Datos .= "\r\n"; // esto se concatena con el ultimo valor de la variable $datos
//Descarga el archivo desde el navegador
header('Expires: 0');
header('Cache-control: private');
header('Content-Type: application/x-octet-stream'); // Archivo de Excel
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Content-Description: File Transfer');
header('Last-Modified: '.date('D, d M Y H:i:s'));
header('Content-Disposition: attachment; filename="'.$Name.'"');//aqui va la variable con el nombre que se dara al archivo generado
header("Content-Transfer-Encoding: binary");
include ('../conexion/conexion2.php');
$seleccionado = $_POST['seleccionado'];
$numero_de_opciome = count($seleccionado);
$consulta="
SELECT * FROM
tabla where columna= '$seleccionado[0]'
";
if ($numero_de_opciome>1) {
for ($i=1; $i < $numero_de_opciome ; $i++) {
$consulta.= " OR num_consigna= '$seleccionado[$i]'";
}
}
$query=pg_query($conexion,$consulta);
while ($resultd=pg_fetch_object($query)) {
$descripcion = str_replace(',',' ',$resultd->descripcion);
$sustituye = array("\r\n", "\n\r", "\n", "\r");
$descripcion = str_replace($sustituye, "", $descripcion);
$Datos .=date("d/m/Y").",$resultd->num_consigna,$resultd->subdireccion,$resultd->delito,$resultd->areaturnada,$resultd->objetivo,$descripcion,$resultd->acusefisico,";
$Datos .= "\r\n";
}
$Name = 'csv/contenido'.date("d/m/Y H:i:s");
if (!file_exists($Name)) {
mkdir($Name, 0777, true);
}
echo utf8_decode($Datos);
?>
Valora esta pregunta
0