PHP básico para dummies

noviembre 13, 2008

Muchos usuarios suponen que hacen las cosas bien, pero hay una realidad que nos invade y es que hay mucha mala influencia dando vuelta entre los programadores. Lo que quiero plantear en este post son un poco de buenas costumbres al momento de programar, y con sus ayudas ir mejorándolo en lo que dice y en nuevas ideas que habré pasado por alto. Cada aporte será agradecido con los debidos créditos en este post. Comencemos desde abajo… Lee el resto de esta entrada »


Creando un HASH de ida y vuelta con MD5 en php.

septiembre 19, 2007

Pongamos un ejemplo: tengo un clásico listado de noticias y su respectivo detalle. En el listado propago el id de la noticia para saber cual levantar en el archivo de detalle (la típica noticias.php?id=1), pero que pasa si quiero proteger la identidad de dicho id? Puedo ofuscarlo pero no sería realmente una protección segura, o lo mejor, puedo hacer de éste un HASH pero no tendría vuelta (recordemos que un HASH no tiene vuelta) y en el caso de ser un id (un simple valor int) puedo usar brutal force para saber cual es el valor nativo con un simple for.
A continuación les mostraré que se puede generar un hash seguro, y no solo eso, sino que lo podré usar para comparar con el id real, aunque lo mejor es que será de manera simple.

Lee el resto de esta entrada »


WYSIWYG BBCode Editor

agosto 30, 2007

BBcode (Bulletin Board Code) es un pequeño lenguaje usado en los foros para darle onda a los mensajes, pudiendo poner negritas, itálicas, y demás.
Como no tiene mucho que ver con html, es mas «sano» al nivel seguridad con los datos de entrada, ya que no es lo mismo aceptar este lenguaje que html, no solo esto, sino que también no dejamos en riesgo nuestro elegante diseño con tags o estilos que son realmente desastrosos.

Les contaré mi experiencia y solución al tema:

Lee el resto de esta entrada »


SOAP – Server y Cliente en PHP con Nusoap.

agosto 28, 2007

Introducción

Antes que nada no voy a entrar en detalles del protocolo sino de como implementarlo con php, pero me consta que lo correcto es al menos aclarar, aunque sea repetitivo, que significan estas siglas.
Sin meterme mucho en el tema puedo contarles que SOAP son las siglas de siglas de Simple Object Access Protocol, el cual obviamente es un protocolo que fue creado por varios grosos (MS, IBM, Etc), y su fuente de datos es el XML con un diseño que cumple el patrón Cabecera-Desarrollo y que actualmente está auspiciado por la W3C.

Es un protocolo que se usa mucho para webservices, y por lo tanto, para hacer una petición desde un cliente se necesita una respuesta desde un servidor.

Si lo que se desea es crear un cliente, el cual hace peticiones a un SOAP servidor que no es nuestro, la tarea será más simple. Ahora, si lo que se desea es tener un cliente, ya el enfoque es otro aunque nada complicado, ya lo verán.

Lo único a tener en cuenta es que debemos contar con una directiva del php.ini indispensable para su funcionamiento, ésta es la directiva always_populate_raw_post_data la cual debe estar en ON.

Otra necesidad es poder tener algo con cual poder escribir y parsear este xml, para ellos tenemos dos opciones: una es usar las funciones que nos da php al habilitar una dll, para más información de esto pueden ver la documentación de php en php.net/soap; dos, usar nusoap, una clase hecha para esta tarea, la cual permite crear cliente, servidor.

Para ser más prácticos les mostraré un simple ejemplo de un servidor y un cliente.

Lee el resto de esta entrada »


Medidas de velocidad

enero 3, 2007

En los tiempos que corren en nuestro país, es común escuchar comentarios respecto a nuestra conexión a internet de banda ancha recordando hasta a la bisabuela del operador de nuestro querido isp, que nos atiende dándonos un supuesto soporte técnico.

En mi caso, soy cliente de una empresa proveedora de inernet (ADSL) que cuando duplicó sus velocidades cayó radicalmente su performance teniendo muy malas experiencias.

Estas empresas suelen recortar ciertos puertos en muchos casos o hacernos perder paquetes y depende mucho de la zona en la que estemos. ¿Por qué digo esto?, porque podemos compartir el mismo proveedor de internet y no tener los mismos problemas.

Entonces, en esta pequeña review, trataré de exponer algunos sistemas para testear nuestra conexión, fruto de las pésimas opciones de testeos que ofrece la gente de mi soporte.

Lee el resto de esta entrada »