Mayo 29th, 2008

Posicionamiento de imágenes por CSS (background)

background posicionamiento

Todo se resume en esto, los dos primeros parámetros numericos que pongas, uno será el desplazamiento horizontal y otro el vertical, no es una propiedad muy común y muchos no la conocen porque el dreamweaver no la desliza (son medidas y es lógico). Pero ayuda bastante a poner índices en nuestras <ul> o <dl> por ejemplo.

Mayo 29th, 2008

Ajax en php

Hoy en día resulta algo feo ver una página que no utiliza ajax, a los usuarios no nos gusta mucho ver como nuestras páginas vuelven a cargar a la hora de enviar un formulario, subir una imagen etc, etc.

La manera más sencilla de empezar a utilizar ajax si no controlamos javascript (javascript es el lenguage del futuro, intenta aprenderlo!), es con la clase xajax, que nos trae un cumulo de funciones que simplifican nuestra tarea. Está bastante bien implementada, y no le falta de nada. A continuación explicaré por qué resulta tan sencillo:

<?php
    include './xajax/xajax_core/xajax.inc.php';$xajax = new xajax();
    $rqstAdd =& $xajax->
                            register(XAJAX_FUNCTION, 'doAdd');

    $rqstReset =& $xajax->register(XAJAX_FUNCTION, 'doReset');
    // set the parameters$rqstAdd->
                                setParameter(0, XAJAX_JS_VALUE, 39);
    $rqstAdd->setParameter(1, XAJAX_JS_VALUE, 571);

    $xajax->processRequest();

    function doAdd($a, $b)
    {
        $response = new xajaxResponse();

        $response->assign('answer', 'innerHTML', $a + $b);
        $response->assign('reset', 'style.display', 'block');

        return $response;
    }

    function doReset()
    {
        $response = new xajaxResponse();

        $response->clear('answer', 'innerHTML');
        $response->assign('reset', 'style.display', 'none');

        return $response;
    }

?>

Las funciones doreset y do add son las que proximamente podremos llamar desde cualquier parte de la pagina, sin necesidad de volver a cargarla!

<form action="#" method="post">
    <input type="button" onclick="<?php $rqstAdd->printScript();
                                ?>" id="btnAdd" value="Click Me" />
    <input type="button" onclick="<?php $rqstReset->printScript();
                                ?>" id="btnReset" value="Reset" />
    <p id="answer"></p>
</form>

ahí esta el truco,  llamamos a las funciones en javascritp pero gracias a el objeto XmlHttpRequest, podemos interactuar con los ficheros php.

Link  | xajaxproject

Mayo 12th, 2008

1005 – Can’t create table ‘xxx’ (errno: 150)

MySQl Logo

Solo hay dos posibles casos en los que nos podría fallar, con este error, nuestra creación de claves foráneas en una base de datos MySQL.

  • Si los dos campos (Nombre de campo y el nombre de campo foráneo) usan tipos de campo incompatibles.
  • Si tu usas “On Delete Set Null” pero el campo no lo permite, MySQL te devolverá el error.

Me decidi a crear este post, porque tuve el problemilla, hay mucha gente por muchos foros buscando resolverlo y no está detallada la información :D. Es una tontería que me hizo perder tiempo, espero que no se lo haga perder a otros.

Mayo 8th, 2008

Internet Explorer 6 en Firefox

 

Firefox Vs Internet Explorer 6

Al plasmar nuestros diseños en CSS, muchas veces hemos sentido la necesidad de ver como quedan en Internet Explorer 6. ¿Pero que pasa si ya nos hemos bajado Internet Explorer 7?, una solución es bajarnos una versión parcheada de Internet Explorer 6 que no elimine nuestra copia de Internet Explorer 7, pero no es una solución Óptima. Con la siguiente extensión para Firefox, podremos como quedaría la estructura si Internet Explorer 6 en nuestro propio navegador Firefox. Este cada vez sorprende más, con los años no tendrá rival.

Descarga | F2IE6

Mayo 2nd, 2008

Conducción de GTA IV

Grand Theft Auto IV

Hay algo que me ha decepcionado un poco de esta obra maestra, y es su conducción. Aunque en el juego resulte más “realista” (el coche es más pesado, hay que apurar las curvas), hace que pierda bastante. Una de las cosas que me gustaba de los GTA, es el poder ir a fondo y coger una curva frenando de golpe, no era realista pero resultaba divertido, creo que no soy el único al que le ha pasado. Por lo demás, es un juego 10 unos gráficos de aupa, y una historia tremenda, parece una película desde el primer momento, me recuerda hacen esto en los Metal Gear..

Mayo 2nd, 2008

Formularios en ruby on rails

Supongamos que estamos haciendo un formulario de recetas, y tenemos definida dentro de nuestra base de datos los campos Titulo, Instrucciones, Descripcion, y Fecha.
Primero crear nuestra aplicacion:

rails recetario

Pues esta es la única instrucción que nos hace falta para crear nuestro formulario es

ruby script\generate controller Receta

controller

Ya con esto, una vez naveguemos a nuestra ruta http://localhost:3000/receta/new, ya tenemos los tres apartados de un formulario:

El de rellenado: ( con todos los datos de nuestra base )

relleno de formulario

¡Esto ya es una pasada, pero aun así hay más! vamos a rellenar nuestro formulario:

2

¡Y encima añade los datos a la base de datos y crea un listado de lo realizado!:

listado

Se me olvidaba comentar que nuestra tabla debe llamarse Recetas, Rails otorga dinámicamente a la clase Receta de funciones para seleccionar las filas de la tabla recetas otorga un atributo para cada columna de la tabla.un modelo singular de nombre de clase (Receta) se mapea a una tabla de la base de datos en plural (recetas). Rails es bastante “astuto” y conoce las reglas de pluralización, de forma que company sea mapea a companies y person se mapea  a people. Para lo demás la s final.

Volviendo a lo anterior, todo esto simplemente con el atributo scaffold: receta. Nos ha permitido empezar a trabajar con nuestro modelo datos: casi sin trabajo de nuestro lado ha creado las acciones List, Show, Edit, Delete. Y ha creado tambien las vistas para cada una de las acciones.  Si quisieramos editar alguna de estas acciones también lo podemos hacer:

definir list

dentro tendríamos que crear el script correspondiente a lo que queramos que se muestre con una nueva view, hay que tener en cuenta que a esta ya le podemos añadir los estilos que queramos.

En definitiva es muy fácil crear formularios con ayuda del framework, rails hace que programar sea cosa de niños, aunque si tengo que elegir lenguage me quedo con php.

Mayo 2nd, 2008

Plugin ruby on rails

Hobo Imagen

Los frameworks que han salido tanto para ruby como para php, permite simplificar mucho las funciones que antes se programaban a mano, haciéndose ahora de manera automática. Dentro de las comunidades tanto php como ruby on rails, hay multitud de extensiones y scripts que permiten hacernos la vida más sencilla.
Hobo es un plugin para Ruby on Rails que añadirá velocidad turbo a el proceso de construcción de una aplicación web. Su características principales son:

  • Plantillas que permiten definir tags personalizados.
  • Tags predefinidos y listos para usar AJAX.
  • Soporte de AJAX.
  • Soporte de temas.

A todo el que quiera realizar aplicaciones web en ruby on rails le recomiendo echarle un ojo.

Link | HOBO