Freelance Programador PHP ofrece sus servicios

juan_belon_PHP

Después del artículo programador Zen, sólo quedaba demostrar que con paciencia ,dedicación y perseverancia se consiguen terminar muchos proyectos, ésta web: Programador PHP, sólo refleja algunos de ellos por cuenta propia, en ella,además ofrezco mis servicios desde ella,…a algun@s ni les cobro! jajaja.

Hay que seguir mejorando, nunca dejar de aprender, esa es la actitud, …finalmente o eres bueno en lo que haces o te retiras…

En mi caso, antes de que acabe el año tengo que preparar dos presentaciones de zenphp en mi Escuela, una en Octubre y otra en Diciembre…me han pedido que lleve más ejemplos técnicos. ¡Deséame buena suerte! 🙂

Continue reading

Automatizando Flash mediante XHTML, DHTML,ActionScript y PHP

Primero deberemos preparar el Flash, con un poco de código en ActionScript para cargar el XML y guardar las variables Flash en el nodo root de la película de forma que así activaremos las animaciones

Después diseñamos el XML como plantilla para zenphp:

así como el JavaScript en otra plantilla, que escribirá el objeto Flash con las variables mediante PHP

sólo queda el PHP, una función simplísima para escribir los contenidos:

Y ya tenemos funcionando el conjunto para cualquier entrada de la base de datos:

Primer “cartucho” para el generador de aplicaciones

Esta vez he tomado la captura en Windows, el primer “cartucho” o dicho de otra forma: aplicación configurable donde poder incluir nuestro propio código a generar es el de un portal en AJAX.

Se pretende hacer un portal, algo como este pero más sencillo y administrable desde una interfaz gráfica en PHP/GTK que use el sistema zenphp como framework de aplicaciones web usando el paradigma de programación orientada a aspectos.

Video tutoriales

Hay una nueva sección de video tutoriales de zenphp en los documentos.
https://forja.rediris.es/docman/?group_id=252
He intentado subir a la Forja el último vídeo de un tutorial de un sitio web 2,0  pero supongo que por que pesa 24MB no me ha salido bien, asi que lo he alojado en mi servidor zenphp.es. En dicho tutorial se explica brevemente cómo crear un componente en AJAX para cargarlo en la web (muy por encima) asi como la parte AJAX de la administración de la web,se edita una sección, se crea una categoría y una obra, se añade una imagen y se coloca en la descripción un vídeo de Youtube.El resultado del tutorial está aquí.

Comunicando tecnologías : PHP + mySQL + AJAX + PERL + DHTML

Hoy se suponía que iba a estar recogiendo la aceituna pero ayer salimos para desquitarnos un poco a una fiesta de americanas xD asi que imposible varear nada ,entonces he picado un poco de artículo matinal 🙂 por cierto habis visto el Wii Aceitunero?

Cambiando de tema,…esto es un ¡Todo en uno!

Mi reto ha sido hoy sincronizar las tecnologías PHP + mySQL + AJAX + PERL + DHTML en un sólo script.

La idea es:

  • Una ventana con 2iframes, en uno se añaden los ficheros , se envían comprobando el estado con un script PERL/CGI su estado que es actualizado en la ventana en su iframe por medio de AJAX y al llegar a completarse dicha transferencia se envia una señal al segundo iframe que inserta una entrada en la BD con el nuevo fichero.
  • Todo ésto con comprobaciones de sesiones en PHP gracias a zenphp…y Funciona! pero bendito internet explorer, con navegadores como este podemos decir que el trabajo de programador web no está bien pagado ni mucho menos…porque me hace reescribir las aplicaciones 2 veces, …para el ie no es lo mismo :
    parent.document.getElementById(‘frm_Ficheros’).contentDocument.getElementById(‘frmSubeFicheros’);
    que:
    window.fileUpload.window.parent.frm_Ficheros.document
    lo mejor es que tengo el ie4linux y SI me dice donde está el error, y en windows no…es irónico ¿no?

Bueno,como viene siendo habitual, una captura:

Continue reading

Incrustar Efectos Prototype en los atributos de un enlace

En zenphp gracias a la macro zen_ajax.js podemos añadir efectos simplemente con un atributo, el resto es automático.
Para ello ponemos nuestro enlace como es normal con
<a href=”/direccion_al_script_ajax.php/” ajax=”1″ animacion_carga=”slideDown” animacion_descarga=”slideUp” division=”contenido”>Enlace AJAX</a>

Y lo que hará el motor será , convertir el enlace en un enlace ajax que se cargará por el método POST en segundo plano mientras se aplica el efecto de “correr hacia arriba” la división “contenido” ,al recuperar el contenido del fichero php del enlace se coloca dentro de la misma división y se aplica el efecto de “correr hacia abajo” mostrándose 😉

Efectos disponibles: highlight, fade, grow, shrink, fold, blindUp, blindDown, slideUp, slideDown, pulsate, shake, puff, squish, switchOff.

AJAX :: Administración por defecto de los modelos

Me pareció muy simple hacer sólo una clase scaffolding así que además le añadí la posibilidad de la complejidad de los modelos tipo Django, (aunque sin llaves externas, por ahora) y además le puse un tema por defecto para mostrar la información de los modelo con un presentador por defecto en HTML, y ahora un administrador con AJAX.

Las brujas 😀 magia AJAX? De Blogging

Para explicarlo, ¿qué mejor que una imagen?

En la imagen podemos ver un ejemplo de visualizador de contenido con soporte AJAX, la función contactar (que es llamada por el enrutador al invocar la delegación por el usuario) vincula la variable $c con el contenido de la página, que está en el padre que es la aplicación web. Dicha variable es de tipo array y se utiliza para reemplazar las #etiquetas# de la plantilla HTML usada para mostrar el contenido final, las constantes de idiomas se definen en un fichero PHP que es cargado en el constructor del visualizador donde reside esta función [en realidad donde reside es una clase heredada de esta] , que tiene una clase plantilla asociada para realizar operaciones de lectura de ficheros HTML y procesamiento de reemplazos simples y rápidos con str_replace en lugar de preg_match.
En el código se utiliza la carga de funciones, ésto quizás pueda resultar molesto pero es por temas de eficiencia el que se cargen las distintas partes de zenphp sólo cuando las necesitemos, es decir, cargaremos las funciones HTML para aplicar una validación a un formulario, además podemos insertar el código en JavaScript para añadir las validaciones que creamos oportunas.
Por último se hace una llamada a $this->mostrar_web($c); que lo que hace es tomar el array de contenido y reemplazar todas sus etiquetas para finalmente mostrar la salida por pantalla.

Las validaciones son automáticas, sólo necesitamos añadir el fichero de script y definir qué campos son los que necesitamos validar…

Extendiendo POA a AJAX : El zen de zen_ajax

¿Programación Orientada a Aspectos sobre AJAX?
Propongo la siguiente metáfora: en un sistema AJAX las peticiones son como en una bici los piñones…si me monto en la bicicleta y le doy a los pedales pero no anda es que hay un piñón que hace que se salga la cadena, se trata de encontrar ese pequeño piñón o piñones que no están bien metidos en la cadena para que podamos disfrutar del paseo.
El AJAX de zenphp utiliza mecanismos para que se pueda asociar partes de un fichero HTML a llamadas AJAX y, de forma automática los eventos “onclick” de los enlaces <a> serán reemplazados por la llamada AJAX de Prototype, que por cierto, usa una versión muy ligera con todo lo necesario para que sea más eficiente.

Trae una gestión de detección de errores que hace que si no se puede mostrar una web con javascript o el navegador no soporta AJAX se carga el enlace normal.

Una captura de zen_ajax en funcionamiento:

Poco a poco, automáticamente, instantáneamente…

Temas por defecto

Aprovechando que he terminado una práctica de esas gordas para la Universidad he montado un sistema de aplicaciones cliente / administrador utilizando las plantillas XHTML+CSS de licencia para copiar 🙂 con ésto siento que he progresado! y mucho, 😀 y realmente estoy bastante contento con el diseño, la plantilla sirve para hacer las llamadas a las vistas y controladores por defecto de todo el sistema de clases de zenphp.

Aquí, una captura de la plantilla en funcionamiento:

Captura de la aplicación por defecto de zenphp

 

Estoy terminando con la plantilla de administración, la factoría de generación de código depende de la clase zen_andamio (el scaffolding de zenphp) y la administración depende de zen_AJAX. Tras escribir esta mañana la clase zen_JSON está bastante avanzado…

Con esto tengo una buena parte hecha de lo que veía imposible ,sin embargo ha sido más fácil de lo que en un principio parecía y ya incluso veo el final del túnel. 

Resultados [iniciales] de la encuesta sobre AJAX

Éstos son los resultados de la encuesta AJAX realizada a programadores…

Parece que todo el mundo conoce AJAX! y que no les gustan mucho los métodos que hay en los frameworks (ni tan siquiera lo que han hecho otras personas: aplicaciones AJAX), ésto plantea un problema que se reduce a las siguientes cuestiones:

  1. ¿Quién necesita un mecanismo AJAX
  2. ¿Cómo realizar una correcta interpretación de lo que el usuario necesita dentro de un conjunto de librerías?
  3. ¿Realmente necesitamos aprender AJAX o simplemente con una serie de llamadas tenemos el trabajo hecho?

Y la respuesta se resume en que: lo más simple es la mejor decisión. Por ello utilizaré una única librería AJAX comprimida (con Prototype incluído) y una serie de objetos extensibles para que el usuario pueda añadir todas las funcionalidades con un par de líneas y…claro, el usuario más avanzado pueda ir a modificar lo que necesite…

Vamos ya a los Resultados!…(entrar para ver las gráficas) Continue reading