Ir al contenido principal

Crear Archivo con la Libreria PHPExcel, a partir de un objeto JSON desde una función Ajax (Jquery)

Saludos a todos los lectores, que estés aquí significa que como, tuviste la necesidad de generar un reporte en formato Excel en una aplicación web, en el ejemplo que les dejo a continuación diseñe una clase que consume la maravillosa librería PHPExcel la cual tiene Demasiadas funcionalidades (Las cuales no conozco todas), Bueno manos a la obra:

ScreenShot:




1) Descarga la Libreria PHPExcel desde la web del autor https://phpexcel.codeplex.com/

2) Si estas utilizando plataforma Linux recuerda darle permisos recursivos al directorio para que prueda escribir.

3) Descarga la clase ReportExcel (Deja comentario o Agradecimiento).

4) Un ejemplo Javascript para consumir esta clase PHP es el siguiente:

   
 function genReport() {
        // vars report solicitude camera
        var creator = "escribojava";
        var owner = "escribojava@gmail.com";
        var subject = "Resporte Demo";
        var filename = "temp/reporte_demo";
        var dataset = JSON.stringify([
          {
            "nombre":"jeison nisperuza",
            "edad":29,
            "pais":"colombia"
          },
          {
            "nombre":"cristian rios",
            "edad":12,
            "pais":"mexico"
          },
          {
            "nombre":"matias david",
            "edad":4,
            "pais":"venezuela"
          }
        ]);
        var position_title = 2;
        var content_title = "solicitudes demo";
        var title_sheet = "solicitudes demo";
        var columns = new Array('NOMBRE', 'EDAD', 'PAIS');
        // switch a json
        $.post("ReportExcel.php", {
            creator: creator,
            owner: owner,
            subject: subject,
            filename: filename,
            dataset: dataset,
            position_title: position_title,
            content_title: content_title,
            title_sheet: title_sheet,
            columns: columns
        })
            .done(function(dataget) {
                var output = $.parseJSON(dataget);
                if (output.success) {
                    document.location.href = (output.url);
                } else {
                    alert("There is no response, check the post data");
                }
            });
    

por último dejo el ejemplo.


Deja tu comentario es lo que me motiva ayudar...


Comentarios

Entradas populares de este blog

Fireworks CS3 portable

Para que hagas los logos, botones e imagenes para tus aplicaciones facil y rapido... ¿Qué es Fireworks? Adobe Fireworks es una aplicación en forma de estudio (basada en la forma de estudio de Adobe Flash ), pero con más parecido a un taller destinado para el manejo híbrido de gráficos vectoriales con Gráficos en mapa de bits y que ofrece un ambiente eficiente tanto para la creación rápida de prototipos de sitios Web e interfaces de usuario, como para la creación y Optimización de Imágenes para web. Originalmente fue desarrollado por Macromedia , compañía que fue comprada en 2005 por Adobe Systems . Fireworks está disponible de forma individual o integrado en Adobe CS3/CS4/CS5 y por tanto ha sido diseñado para integrarse con otros productos de Adobe, como Dreamweaver y Flash . Integración con Adobe Flash La integración con Adobe Flash se ha ido reduciendo paulatinamente desde que Flash, en su versión 7, integró la herramienta PolyStar que hace un polígono...

Algoritmo para obtener el número mayor

Algoritmo para obtener el número mayor: Proceso numero_mayor                n1<-0                n2<-0                Escribir 'Ingrese el primer número'                Leer n1                Escribir 'Ingrese el segundo número'                Leer n2                Si (n1=n2) Entonces                                Escribir 'Los número...

Dada una matriz de 5 filas y 5 columnas imprimir la diagonal de la matriz.

Algoritmo para encontrar las diagonales de una matriz de un cuadrado Proceso diagonal_matrices         Dimension vect(50,50);         Escribir 'ingrese el numero filas';         Leer m;         Escribir 'ingrese el numero columnas';         Leer n;         Escribir 'Digite los valores:';         Para i<-1 Hasta m Con Paso 1 Hacer                        Escribir 'Fila ',i                        Para j<-1 Hasta n Con Paso 1 Hacer              ...