Telepieza es un mezcla de ayuda, información, opinión, ocio, negocio y diversión, esperamos que todos vosotros os sintaís en vuestra casa.
Archivo de la Categoría JPSpan-Ajax
04
05
2009
Solución de incompatibilidad entre Mootools y JPSpan en páginas Web con AJAX.Escrito por: mariano en JPSpan-Ajax Enviar Entrada
Mootools es un Framework (Estructura de soporte definida, mediante la cual otro proyecto de software puede ser desarrollado), web orientado a objeto para JavaScript, de código abierto (Open Source). Gracias a dicho programa podemos desarrollar aplicaciones de escritorio de una forma sencilla y elegante. Es interesante leer la información de la wikipedia para entender mejor el porqué es necesario programas como Mootools, Jquery, Dojo, Prototype o script.aculo.us para desarrollar páginas web cada vez más interactivas con el usuario final (Internauta). Mootools tiene un API para ajax, pero en mi opinión el modulo JPSpan está más desarrollado para entornos AJAX – PHP. JPSpan una de las cosas que tiene muy buenas es el control de 6 tipos diferentes de errores.
JPSpan no se centra sólo en gestionar bien los mensajes de error, sino en la comunicación de datos pudiendo ser en los siguientes formatos: JSON, PHP, XML, TXT. Podemos utilizar Mootools como gestor de eventos para controlar las teclas y el ratón en nuestra aplicación WEB, dejando el código de nuestra página sólo con código HTML, sin ninguna instrucción JavaScript y CSS. Se dice que la era de la WEB 2.0 es eso, uno o varios ficheros con extensión .css para los estilos, uno o varios ficheros .js para el código JavaScript y por último una página realizada en php o html o .NET o Java, que su resultado final es sólo código HTML. Todo lo expuesto no es posible si no tenemos herramientas como Mootools o JPSpan para poder realizar nuestros proyectos con una precisión y fiabilidad increible. Pero todo tiene una pega, y son las incompatibilidades que un programador tiene cuando quiere unir diferentes programas (Mootools y JPSpan) para poder llegar a un resultado final esperado por el programador, cuando tenemos dichos problemas, nos es muy dificil solucionarlos por tener poca ayuda disponible en Internet. Escribo dicho post para explicar cómo solucionar un problema grave de funcionamiento del modulo JPSpan utilizando Mootools como framework en nuestras aplicaciones Web. El problema radica en la no recepción de parámetros o datos enviados por nuestro programa realizado en JavaScript al servidor de datos PHP.
13
04
2009
Ajax con JPSpan para PHP 5ª parteEscrito por: mariano en Ajax, JPSpan-Ajax, PHP Enviar Entrada
Vamos a realizar un pequeño resumen en la 5ª parte de lo aprendido sobre JPSpan y PHP antes de seguir aprendiendo más cosas sobre la tecnología AJAX – JPSpan – PHP. …………………………………………………….. 1.- JPSpan se comunica mediante HTTP, define la sintaxis y la semántica que utilizan los elementos software de la arquitectura web (clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. 2.- JPSpan utiliza el Objeto XMLHttpRequest (XHR), también referida como XMLHTTP (Extensible Markup Language / Hypertext Transfer Protocol), es una interfaz empleada para realizar peticiones HTTP y HTTPS a servidores WEB. Para los datos transferidos se usa cualquier codificación basada en texto, incluyendo: texto plano, PHP, XML, JSON, HTML. Dicho objeto lo tenéis en JPSpan/js/httpclient.js 3.- JPSpan utiliza la técnica de reflexión de objetos. La reflexión es un proceso mediante el cual un programa es capaz de obtener información sobre si mismo y por tanto es capaz de auto modificarse en tiempo de ejecución. JavaScript emplea el concepto de reflexión para permitir descubrir propiedades y métodos de objetos externos. El ejemplo más sencillo es el de averiguar si un objeto posee un determinado método y así poder ejecutarlo (Eso es lo que hace JPSpan).
12
04
2009
Ajax con JPSpan para PHP 4ª parteEscrito por: mariano en Ajax, JPSpan-Ajax, PHP Enviar Entrada
Cómo hemos indicado JPSpan proporciona al Cliente el código JavaScript necesario para realizar llamadas a la clase en el lado del servidor y hacer que la página pueda gestionar las llamadas en sí. La función displayCliente(), está en la página /JPSpan/Server.php y es : /** Lo importante de dicho método es la generación de la variable $client, es donde está todo el código JavaScript generado por JPSpan en función a los parámetros que le hemos enviado, por ejemplo, indicar que el código de transmisión de los argumentos (variables) sea por ‘php’, ‘xml’ o json’ o Comprimir el código JavaScript mediante la página script.php. Cómo no es posible visualizar por pantalla la variable $client, vamos a introducir tres líneas nuevas de código php (ver abajo en rojo la incorporación) para grabar dicha variable en un fichero con nombre ‘logclient.txt’ para analizar su contenido en profundidad y es : /** La primera instrucción insertada por nosotros $t_log_fp = fopen(‘logclient.txt, ‘w’); le indicamos que abra el fichero de modo escritura, si no existe lo crea, y que empiece en el primer registro al indicar la letra ‘w’. La segunda instrucción fwrite($t_log_fp, $clientn ); le indicamos que grabe en dicho fichero la variable $client. La tercera instrucción fclose($t_log_fp); le indicamos que cierre el fichero logclient.txt. NOTA : Cuando activamos el programa realizado en html con el navegador y llama al programa jpspan_server.php del servidor, grabará en la carpeta (donde ha sido llamado el programa jpspan_server.php) el fichero logclient.txt con todas las instrucciones javascript necesarias para poder realizar la comunicación. Podemos ver el fichero una vez generado : FICHERO LOGCLIENT.TXT
11
04
2009
Ajax con JPSpan para PHP 3ª parteEscrito por: mariano en Ajax, JPSpan-Ajax, PHP Enviar Entrada
En la tercera parte de Ajax con JPSpan para PHP, vamos a explicar el funcionamiento del programa jpspan_server.php del servidor. (Abajo les dejo el código de dicho programa). <?php /** * This is a remote script to call from Javascript */ require_once ‘../JPSpan.php’; require_once JPSPAN . ‘Server/PostOffice.php’; define(‘JPSPAN_INCLUDE_COMPRESS’,FALSE); session.start(); class Customer { public function getMyDatos($tysexo) { $mydatos['sessionid'] = session_id() ; $mydatos['nombre'] = “mariano” ; $mydatos['empresa'] = “Telepieza S.A.” ; if ($tysexo == “H”) $mydatos['tysexo']= “Hombre”; elseif ($tysexo == “M” ) $mydatos['tysexo']=’Mujer’ ; else $mydatos['tysexo'] = ‘¿?’; return $mydatos ; } } $S = & new JPSpan_Server_PostOffice(); $S->RequestEncoding = ‘php’; $S->addHandler(new Customer()); if (isset($_SERVER['QUERY_STRING']) && strcasecmp($_SERVER['QUERY_STRING'], ‘client’)==0)
{ $S->displayClient(); } else { require_once JPSPAN . ‘ErrorHandler.php’; $S->serve(); }
1.- require_once ‘../JPSpan.php’; La variable JPSPAN_INCLUDE_COMPRESS, puede ser TRUE o FALSE, sirve para comprimir el programa en javascript generado por el servidor para la comunicación, siempre le indicaremos FALSE, porque la técnica de compresión que tiene JPSpan es muy lenta y come mucho recurso de máquina, no es nada aconsejable colocar en dicha variable TRUE.
10
04
2009
Ajax con JPSpan para PHP 2ª parteEscrito por: mariano en Ajax, JPSpan-Ajax, PHP Enviar Entrada
Dichos programas serán muy sencillos, porque mi intención es probar la rápidez del sistema de comunicaciones con JPSpan y después iremos complicando los programas en función de los comentarios y pruebas a realizar. La ídea del programa: El programa tiene que enviar un campo con un select de M=Mujer y H=Hombre al servidor y este tiene que responder la ID de session del sistema, un nombre y empresa, supuestamente extraido de una Base de Datos y el texto de Hombre o Mujer seleccionado por el Usuario. Ejemplo del programa muy Sencillo de Comunicación Ajax con JpSpan Sesion ID : Nombre : Empresa: Mujer El programa en el lado del cliente y realizado en html es : <head> <title>Ejemplo Sencillo de JPSpan</title> <script type=”text/javascript” src=”jpspan_server.php?client”></script> <script type=”text/javascript”> function init() { var customerCallback = { function fetchMydatos(tysexo) { function showDatos(Mydatos) { </head> Vamos a comentar las instrucciones que son esenciales para la conexión del programa con el servidor PHP:
08
04
2009
Ajax con JPSpan para PHP 1ª parteEscrito por: mariano en Ajax, JPSpan-Ajax, PHP Enviar Entrada
La naturaleza de HTTP en las aplicaciones web, del punto de vista del internauta, se llevan a cabo por acciones (Eventos) y la aplicación web responde con otra página para enseñar dicha información o solicitar más información al usuario. En una aplicación Web , cada acción del usuario, por ejemplo hacer un click en un botón de un formulario, genera la recarga de otra página web entera para actualizar la información solicitada y a la vez, muchas veces dicha información precisa de más datos que a su vez, crea frustración por tanta demora entre página y página.
Para poder trabajar con AJAX, necesitas dominar las tecnologías de CSS, HTML, XML, JAVASCRIPT, DHTML y DOM, en el lado del Cliente (Navegador) y en el lado del servidor, puede ser cualquier lenguaje orientado a objetos como (JAVA, PHP, VISUAL, PERL). La técnica que vamos a explicar con JPSpan, es un marco de trabajo Ajax, para comunicar y transferir datos en formato (XML, JSON y PHP) con servidores programados en PHP con aplicaciones que en su otro extremo tengan JAVASCRIPT. JPSpan es simplemente un integrador de clases entre Javascript y PHP, para que se puedan comunicar entre ellos utilizando una clase PHP la técnica de reflexión. Para poder conseguir los programas de JPSpan, hay que realizar lo siguiente :
|
Si desea contactar con telepieza, puede enviar un e-mail a:
telepieza@telepieza.com.
Normas de uso y Politica de privacidad .Telepieza empezó el 20/12/2007 a las 18h (Hora Española).
Ayude a financiar Telepieza en Internet, picando un anuncio de su interes en nuestro Weblog.

Entradas (RSS)