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 »