lunes, 22 de abril de 2013

Programación Orientada a Objetos con PHP

Este Post va a ser muy cortito ya que solo quiero compartir algo que me fue de mucha utilidad para aprender programación orientada a objetos con PHP y que en ocaciones muchos desarrolladores no lo conocen, y es el manual sobre POO que se ofrece en la documentación oficial de PHP que contiene varios ejemplos que son de mucha ayuda para entender la orientación a objetos.



sábado, 13 de abril de 2013

Páginas Extrañas en las Estadísticas de Blogger

Al revisar la nueva interfaz de Blogger, especificamente en la sección de Estadísticas en la parte de fuentes de tráfico observé que a parte del trafico que viene desde Google hacia mi blog, existía tráfico desde páginas extrañas desconocidas, obviamente que la curiosidad era grande, de saber que páginas son, pero antes de dar click en estos enlaces, recordé que en Internet hay que tener mucho cuidado ya que pueden ser páginas que te redireccionan a sitios en donde te inundan de publicida, o las típicas páginas que instalan algún tipo de malware en tu PC.

Entonce lo que hice fue copiar la dirección de uno de estos sitios e investigar en Google, y o sorpresa mis sospechas eran ciertas, efectivamente eran páginas que podían infectar tu computadora, con algún tipo de virus o eran spammers, es decir no eran confiafles.

La solución a esto es no pinchar en ninguno de estos enlaces, el mismo blogger se encarga de borrarlas pero el problema es que aparencen con otros nombres, en mi caso las paginas que aparecieron fueron: vampirestat.com                zombiestad.com

En conclusión hay que tener cuidado con este tipo de páginas ya que los daños que podrían causar a nuestas PC podrían ser graves.

Les dejo la fuente en la cual consulté la información http://deltejado.blogspot.com/2012/04/los-peligros-de-las-estadisticas-en.html

Saludos

viernes, 12 de abril de 2013

Ocultar fila de una Tabla con Javascript

Dejo un código que permite ocultar la fila de una tabla mediante Javascript.
La fila se oculta cuando se activa un campo de tipo checkbox.

filaSinOcultar

filaOculta
 <!DOCTYPE html>
<html>
    <head>
        <title>Ocultar Fila de Una Tabla con Javascript</title>
        <script type="text/javascript">
            function ocultarFila(numFila) {               
                var form = document.form;
                fila = document.getElementById('tabla').getElementsByTagName('tr')[numFila];
                if(form.ck.checked == true) {     
                    fila.style.display = 'none';
                } else {                  
                    fila.style.display = '';
                }         
            }
        </script>
    </head>
    <body>
        <form name="form">
            Ocultar Fila: <input type="checkbox" id="ck" onclick="ocultarFila(1)"/>
        </form>
        <table id="tabla" border="1">
            <tr>
                <td>Contenido Columna1 Fila1</td>
                <td>Contenido Columna2 Fila1</td>
            </tr>
            <tr style="background-color: blue">
                <td>Contenido Columna1 Fila2</td>
                <td>Contenido Columna2 Fila2</td>
            </tr>
            <tr>
                <td>Contenido Columna1 Fila3</td>
                <td>Contenido Columna2 Fila3</td>
            </tr>
        </table>  
    </body>
</html>

miércoles, 10 de abril de 2013

Calcular número de segundos entre dos fechas con PHP

En ocaciones en tus desarrollos con PHP necesitas calcular el número de segundos transcurrido entre dos fechas, por ejemplo digamos que quieres saber el tiempo transcurrido desde que el usuario inició su sessión hasta que la finalizó.

Entonces digamos que desde una base de datos (por ejemplo MySQL) consultaste la fecha del último inicio de sesión y del fin de sessión, del usuario que generalmente esta almacenada como tipo de dato timestamp (YYYY-MM-DD hh:mm:ss) ejemplo (2013-04-11 00:34:19). Usamos el siguiente código

$fechaInicial = '2013-04-11 00:34:19';
$fechaFinal = '2013-04-11 00:35:50';

$segundos = strtotime($fechaFinal) - strtotime($fechaInicial);
print $segundos;

Esto dara como resultado que el usario ha estado logueado 151 segundos con esto ya es mas fácil trasformarle a minutos o a lo que quieras.

Lo que se hace es utilizar la funcion strtotime, la misma que recibe como parámetro una fecha que este en formato de fecha en Inglés y la transforma a formato de fecha UNIX(el número de segundos desde el 1 de Enero del 1970 00:00:00 UTC).

Es decir strtotime transforma para el ejemplo  2013-04-11 00:34:19 a 1365640459. Lo que hara la funció será lo siguiente:

     ?          =  2013-04-11 00:34:19  -  2013-04-11 00:34:19 
$segundos = strtotime($fechaFinal) -  strtotime($fechaInicial);
151           =         1365640610       -      1365640459

Un problema que suele ocurrir al usar strtotime es cuando calculas el número de segundos entre una fecha inicial y la fecha actual que te devuelve el sistema, esto debido a que si no tienes configurado la zona horaria de tu país, el sistema devolvera la fecha y hora configurada por defecto que corresponde a UTC.

Para configurar la zona horaria en mi caso que estoy en Ecuador, puedes hacerlo de dos maneras:

Antes de las líneas de código que van a calcular el número de segundos debes incluir lo siguiente
 date_default_timezone_set('America/Guayaquil');

Para ver el listado de zonas horarias que soporta PHP y encontrar la tuya lo puedes hacer desde http://www.php.net/manual/es/timezones.america.php
 
O la otra manera es hacerlo directamente en el archivo de configuración php.ini en donde debes buscar la linea date.timezone = UTC y remplazarla por date.timezone = America/Guayaquil, o por la zona horaria de tu país.