Archivo de la categoría: PHP

Implementar JQuery Gantt en nuestros proyectos

Hace poco en un proyecto me toco trabajar con un sistema de gestión de proyectos y era necesario mostrar un gráfico Gantt para mostrar las actividades del mismo, luego de una búsqueda intensiva en la web, encontramos la librería JQuery Gantt desarrollada por Roberto Bicchierai, aunque había opciones mas interesantes la mayoría son privativas, mientras que esta es Open Source.

img-jquery-gantt-view

Muestra de como se ve el Gráfico Gantt.

En mi caso me toco integrarlo con CodeIgniter (PHP), necesitaba persistir la misma en MySQL aquí que genere unos script SQL a partir de la documentación oficial, la cual aunque no es del todo clara funciona y permite realizar tus ajustes.

Los fuentes de este proyecto puedes encontrarlos en Github.

Para mostrar el gráfico, ejecuta el controlador Gantt la url debería ser algo así como: http//TUBASEURL/Gantt o   http//TUBASEURL/index.php/Gantt.

Si tienes problemas para visualizar algunas imágenes dentro de la vista gantt.php se encuentra la variable Javascript – GANTT_URL_RESOURCE ; colocar tu url, por defecto tiene base_url().

Si te gusta comparte, si necesitas ayuda con gusto puedo ayudarte.

Puedes consultar la documentación oficial aquí.

Anuncios

TimeStamp Javascript y PHP

Muchas veces cuando trabajamos con fechas y horas en nuestros diferentes proyectos webs, esto se vuelve un verdadero dolor de cabeza, y para complicarlo mas tenemos que manejar tiempo del lado del servidor (PHP) y por el lado del cliente (Javascript).

Resulta que Javascript maneja el timestamp en millisegundos, mientras que PHP, maneja el timestamp en segundos, ambos desde el tiempo Unix, veamos la diferencia de forma practica.

Tenemos como premisas que la hora del servidor es: 2014-03-20 18:22:51

Al ejecutar en PHP la función srttotime(‘now’); // el resultado es: 1395355971, cuando le enviamos este resultado Javascript, resulta que para el lenguaje faltan unos cuantos miles de milisegundos y para él, al ejecutar el siguiente código la fecha resultante es muy diferente, veamos: new Date(resultado); // resultado es: Fri Jan 16 1970 23:05:55 GMT-0430 (VET). Veamos el Ejemplo

Imagen

Bien, ¿Como resolvemos este comportamiento?, pues muy sencillo, podemos o multiplicar por mil (1000) el timestamp dado en javascript o en php (yo recomendaría hacerlo en PHP, ya que si estamos utilizando una librería JS de fechas, y esta recibe un JSON implicaría recorrer todo JSON en el cliente formatear y luego pasar el mismo, mientras que si lo hacemos con PHP, mientras construimos los arreglos estamos manejando los datos). Basta de texto y mas practica.

<?php

$milisegundos = strtotime(‘now’) * 1000;

$segundos = round($milisegundos/1000); //usamos round para redondear al segundo mas cercano.

?>

Imagen

Descargar el ejemplo aquí.