jueves, 25 de febrero de 2016


Hoy vamos a explicar como exportar datos de una web con base de datos a distintos formatos de documentos.

Tenemos que distinguir dos tipos:
  • PDF
  • Word y Excel

¿Porqué distinguimos de dos tipos?

Porque para imprimir en PDF necesitaremos una una librería externa a PHP, sin embargo .doc y .xls lo vamos a convertir en las cabeceras (header()).

Empecemos por explicar el escenario de trabajo.
Tenemos una web que administra una base de datos que guarda preguntas y respuestas.


Queremos que el administrador tenga la opción de exportar la base de datos a documentos.

Empecemos viendo cómo vamos a exportar estos datos.

Primero vamos a centrarnos por lo más sencillo.
Para ambos casos de tipos de formatos vamos a necesitar una página la cual vamos a imprimir en un documento. La vamos a llamar impresion.php.


Crearemos un nuevo script que se va a encargar de gestionar la exportación.
En este nuevo script, lo primero que debemos hacer es comprobar el tipo de extensión


Como observareis, detectamos extensiones solamente en función de .doc y .xls, ya que el siguiente paso es detectar si es PDF por el tipo.

Ahora solamente nos centraremos en los .doc y .xls

Una vez que detectamos que no es PDF, escribimos las cabeceras correspondientes.


Siendo la cabecera que se va a encargar de exportar los datos:


El atributo filename, va a ser el archivo que nos va a generar, que decidimos ponerle de nompre "preguntas" y le añadimos la extensión detectada anteriormente.

Una vez hecho el require del documento de impresión creado antes, vamos a imprimir en .doc o en .xls.

Veamos el resultado: 



Ahora pasamos a trabajar con el formato PDF, para ello necesitaremos la libreria DOMPDF, el cual nos lo descargaremos de GitHub y lo incluiremos en nuestro script.

Ahora dentro de la detección del formato PDF, realizamos lo siguiente.


Como vemos, lo primero que hacemos es incluir la libreria.
Creamos la clase Dompdf para poder acceder a sus métodos.
Lo primero, es necesario cargar el HTML a imprimir, es importante añadir la ruta completa, que en mi caso es una constante que contiene:

"http://localhost/sabioGC/util/"

Una vez cargamos el HTML, renderizamos el resultado y una vez renderizamos, generamos el PDF con el título que queramos y su extensión .pdf

Así de simple.

Veamos el resultado:


Sin más, espero que os sea de ayuda.

Emanuel Galván Fontalba - Web Developer.





martes, 15 de diciembre de 2015

Desde Rincón Main { } queremos recomendaros la asistencia a las conferencias que se darán en el marco de la Sysmana 2016,un evento anual organizado por el departamento de informática del I.E.S. Gran Capitán en el que profesionales del sector IT ofrecen a los alumnos de los ciclos de ASIR y DAW conferencias y coloquios sobre diferentes herramientas y proyectos informáticos.

Para saber más sobre ello pincha aquí



viernes, 16 de octubre de 2015


Breve artículo para explicar las diferencias básicas entre los modos FTP activos y pasivos.

MODO ACTIVO
Se trata del habitual por defecto. Este modo crea dos conexiones diferentes. La primera para la transmisión de comandos desde cualquier puerto de nuestro ordenador, inferior al 1024 hacia el puerto 21 del servidor. Con esta conexión, y con el comando #port, se informa al servidor del puerto de nuestra máquina que va a escuchar los datos del servidor.

Así, para descargar un fichero, el servidor es quien inicia la transferencia de los datos, desde su puerto 20 al puerto que se le ha sido indicado. Es por eso que se le llama modo activo.


MODO PASIVO
En cambio, en pasivo es el cliente quien va a iniciar la conexión con el servidor. Lo primero se abre una conexión de control desde un puerto de la maquina local al puerto 21 del servidor. Ahora el cliente pide al servidor un puerto abierto. Una vez recibida la respuesta, es el cliente quien establece una conexión con el servidor a través del puerto que se le ha enviado.


Como conclusión, podemos decir que en el modo pasivo las conexiones se establecen por el cliente, mientras en en activo se establecen por la maquina que envía los datos.



Junto con Rafael Miranda Ibañez

domingo, 17 de mayo de 2015



Hola!!
Hoy os voy a presentar mi GitHub.
En el os mostraré todas las versiones de mis proyectos.
Actualmente tengo varios en marcha.

Pues sin más aquí os pongo el link: EmanuelFontalba

Sin más, saludos!!

sábado, 16 de mayo de 2015



Vamos a hacer un breve resumen de como usar Git desde consola.
Explicaremos como usarlo a nivel individual como para hacer colaboraciones.
Sin más, espero que os sea útil. 


Creación del repositorio:
Lo vamos a crear desde GitHub:



Copiamos el enlace del repositorio:


Ahora desde la consola de Git, vamos a clonar el repositorio:


Despues de clonar, nos situamos dentro con el comando cd:


Ahora escribimos el código correspondiente y lo guardamos dentro de este repositorio.

Cuando acabemos hacemos un git status para ver si se a añadido al repositorio local con éxito:


Ahora vamos a hacerle un add:


Vemos de nuevo el git status y vemos como se han quedado en el stage área:


Vamos a hacer nuestro primer commit:



Volvemos a ver el git status y comprobamos que ya no están en el stage área:



Ahora vamos a hacer un push sobre el commit hecho, para subirlo a nuestro repositorio remoto:




Ahora hacemos lo mismo con el resto de versiones:



COLABORACIONES:
Lo primero nos tienen que añadir como colaborador:



Copiamos la dirección del directorio del repositorio.
Ahora hacemos un git clone:



Ahora hacemos una nueva rama y nos situamos sobre ella:


Justo después nos situamos sobre ella:


Ahora hacemos los cambios correspondientes y lo añadimos al directorio.
Y hacemos el add y el commit, como anteriormente comentamos.

Ahora hacemos push, mencionando la rama:



Vemos ahora que aparece en el repositorio remoto, nuestra sugerencia de código:



Ahora hacemos el pull request y a esperar a que nos acepten nuestro código y lo unan con su rama master.




Y hacemos el merge:



Y ya lo tenemos listo!!







lunes, 13 de abril de 2015


Pequeño tutorial de como usar EGit desde Eclipse para usar el controlador de versiones GitHub.
Presentación:


Documentación:


miércoles, 18 de febrero de 2015



Antes de seguir leyendo, debes de leerte uno de los post anteriores donde explico como instalar JDK.





Consejos previos:

Antes de empezar a programar, debemos de conocer una serie de conceptos y consejos para conseguir un buen programa y código.



Lo primero que debemos plantearnos es si nuestro programa va a ser privativo o lo vamos a compartir con otros programadores.



Si decidimos que el programa va a ser privativo y no queremos que nadie lo entienda, debemos de ofuscar el código, es decir, el nombre de las variables, métodos, campos, estados, excepciones, etc, no deben de ser claros. Ejemplo:





int x; (variable que va a ser la edad)

public void metodo1(int x); (método que aumentará la edad en +1)





Tampoco se debería comentar el código ni tabular el código.



Si por el contrario decimos que el código lo vamos a compartir con otros programadores o el caso de que no nos importe que sea legible, el código ha de ser claro y conciso.



El nombre de las variables, métodos, campos, estados, etc han de estar bien escritos:





int edad;

public void cumpleanios(int edad);





En este caso el código ha de estar bien comentado y correctamente tabulado.



Conociendo el entorno de java:



- Comentarios:

Para comentar el código, debemos ver el tipo de comentario que queremos hacer.



El primero que vamos a definir es el comentario en linea (//), el comentario no puede superar una línea. Se suele usar para comentar cosas que te quedan por hacer en el código o por hacer una breve aclaración de alguna línea de código.







public void cumpleanios(int edad){

    ++edad; // incrementar en uno la edad

}





Ahora pasemos a definir el comentario en bloque(/* comentario */), el comentario suele ser grande y para no hacer varios comentarios en linea, pasamos a hacer un solo comentario pero en bloque. Suele usarse para grandes comentarios dentro del código.





public void cumpleanios(int edad){

    /* En este comentario vamos a definir este método

    comentario comentario comentario comentario

    comentario comentario comentario comentario

    comentario comentario comentario comentario */

    ++edad;

}





El siguiente comentario que vamos a definir se suele usar para hacer un comentario formal e ilustrativo de nuestro código, haciendo de resumen de éste. Este comentario va a ser javadoc (/** comentario*/)





/**

* Programa de ejemplo para comentario javadoc

*

* @autor Emanuel Galván Fontalba

* @version 1.0

*/

public class Ejemplo(){

    public static void main(String [] args){

      //codigo

      //codigo

      //codigo
    }
}





Éste comentario requerirá generarlo más adelante y se genera un documento en HTML, el cual se puede visualizar más adelante.



-Conceptos generales:



Bloque de código:

Todo lo que va en un bloque de código, irá entre llaves ({ código }).



Cerrar lineas de código:

Líneas de código que no definen un bloque de código, se cerrará con punto y coma ( ; ).



Reglas generales de sintaxis:



-En el nombre de las variables, la primera letra es en minúscula.

-En el nombre de las clases, la primera letra es en mayúscula.

-En el nombre de métodos, la primera letra es minúscula.







Tras esta pequeña introducción pasamos a programar y establecer los comentarios correctamente:




/**

* Programa que muestra por pantalla “Hola mundo”

*

* @autor Emanuel Galván Fontalba

* @version 1.0

*/

public class HolaMundo(){ //Bloque de código
    public static void main(String [] args){
      System.out.println(“Hola mundo!!”); // Muestra por pantalla en consola
    }
}





Todo esto lo ejecutamos correctamente como se indica en la entrada donde comentamos como instalar JDK.

Documentación Javadoc de Oracle: Enlace
 
© 2012. Design by Main-Blogger - Blogger Template and Blogging Stuff