Proyecto MIPPO
Aquí publico (provisionalmente) un nuevo proyecto en el que estoy metido.
MIPPO web
MIPPO es un panel para la administración vía web de un comercio.
Desde MIPPO se podrá gestionar el alta de nuevos productos, así como dar de baja, ventas e incluso estadísticas.
No está pensado para ser una página web en la que los clientes tengan acceso, sino que es una herramienta para el día a día del trabajador del establecimiento.
A MIPPO se accederá con un usuario y una contraseña. Dependiendo del nivel del usuario, tendrá acceso a ciertas opciones. Siendo el Administrador el único capaz de tener acceso ilimitado.
Este nuevo proyecto nace con el simple hecho de querer aprender más a fondo sobre programación web, y en concreto sobre AJAX.
Metiéndonos más a fondo, MIPPO está desarrollado (por el momento) con PHP, JQuery, MySQL, CSS (en ocasiones usando CSS 3.0), y HTML. Como framework para trabajar con AJAX he escogido JQuery por su numeroso catálogo de plugins, así como por su extensa documentación en internet y por su facilidad de uso.
Para la base de datos uso MySQL junto con PHP para trabajar con ella. En ciertos puntos estoy usando opciones de CSS 3.0, aunque la mayoría viene de versiones anteriores.
He de decir que soy un principante en este mundo, así que si eres un experto y por casualidad echas un ojo a MIPPO, quizás observes cosas que se deberían hacer de otra manera (seguro). Pero aquí estoy yo para aprender.
MIPPO en principio iba a ser un regalo para el comercio de ropa de mi padre. Ahora mismo usa un programa en modo texto sobre un Windows 95 (sin internet, menos mal) y lo que me gustaría era modernizarle todo el sistema.
Este es un panel de administración vía web, y no de escritorio, principalmente por la facilidad de programación. Pero aparte, me pareció una buena idea, ya que así los 3 comercios que posee mi padre podrían estar trabajando sobre una base de datos e incluso mejor, se podría acceder al panel desde cualquier punto del mundo para ver estadísticas, dar de alta productos, o lo que se necesitase.
Sin duda MIPPO en un servidor siempre levantado sería de gran utilidad.
A día de hoy (14 de julio), el proyecto está muy poco avanzado. Estoy trabajando en la parte de “alta de productos”, pero claro, cuando empecé no sabía nada en absoluto de JQUERY, y al tener que ir aprendiendo sobre la marcha, todo se ralentiza.
Alta de productos
En esta sección de MIPPO se presentará un formulario en el que se usará AJAX para busquedas LIVE en campos como “Proveedores” o “Producto”.
También habrá campos calculados usando AJAX tambien en la sección de precios de compra, precios de venta y margen.
Para las tallas y colores se usarán formularios dinámicos en cascada. Usando un plugin de JQUERY, al seleccionar un tipo de talla (talla de letras, numérica, lenceria etc), en otro campo “select” se autocompletará con las opciones seleccionables.
Al finalizar habrá un botón “Dar de alta” que enviará los datos del formulario a un PHP que se encargará de meter todo en la base de datos. Aquí dejo una captura de cómo va esta sección:
Muchas cosas aún no están terminadas. Por ejemplo el Footer con la fecha es provisional y además no es correcto, ya que no supe ponerla con la funcion de PHP cambiando la zona horaria y la hora en la captura debería ser 03:27
Otra funcionalidad que he tenido que posponer por el momento es la de chequeo de que todos los campos de cada sección estén cubiertos. Si ese fuese el caso se mostraría en la parte de la izquierda un TICK verde, y en caso contrario una CRUZ.
Login
La ventana de login en un futuro se hará de otra forma, usando mas AJAX.
Tal como está ahora, los datos introducidos se envian a un fichero de comprobacion PHP que trabaja con la base de datos y la tabla usuarios de MySQL y genera avisos Javascript (alert) cuando alguno de los campos es incorrecto o cuando se deja uno de los campos vacío.
La clave se guarda en la base de datos usando encriptación (MD5)
La cabecera tiene el logo del comercio de mi padre por motivos obvios. Lo que se pretendería ahora es que desde una pestaña de administración del panel se pudiesen cambiar este tipo de cosas (logotipo, nuevos proveedores, nuevos tipos de talla, nuevos tipos de productos etc).
¿Dónde descargar MIPPO?
Para hacer de MIPPO algo más serio he creado un repositorio GIT opensource hospedado en GITHUB.
La URL del proyecto es: http://github.com/faidoc/MIPPO-web
Instalación
Requisitos:
- Servidor web que trabaje con PHP y MySQL (recomendado Apache o Cherokee)
- PHP 5
- MySQL
- GIT para bajar desde respositorio en github.com (se pueden bajar los source directamente desde el navegador entrando en la web del proyecto en github)
Lo primero que hay que hacer es descargar con GIT los archivos. Ejecutamos el siguiente comando:
git clone http://github.com/faidoc/MIPPO-web.git
Esto creará una carpeta con el nombre de MIPPO-web en donde se encontrarán todos los archivos necesarios.
Lo primero será editar “config.php“. Esta es la configuración para trabajar con MySQL.
Especificamos el host, usuario, contraseña y base de datos.
Ahora es necesario crear una nueva base de datos con el nombre que queramos. Se puede crear con PhpMyAdmin o directamente desde mysql, libre elección.
Teniendo creada ya nuestra base de datos ejecutamos el script “bd.sql”. En PhpMyAdmin solo habría que importar este archivo en la base de datos que hemos creado anteriormente.
Con este paso hemos creado las tablas y todo lo necesario de nuestra base de datos.
Solo queda mover nuestros archivos (el bd.sql no hace falta ya) a nuestro directorio apache (generalmente en /var/www o /var/html o /srv/html) y ya está todo preparado.
Si accedemos desde un navegador podremos ver la pantalla de Login.
¿Puedo probar una DEMO de MIPPO?
Gracias a que todo lo que llevo hecho lo hago directamente en mi servidor, se puede probar MIPPO sin tener que instalarlo en tu equipo.
La URL es: http://files.linuxeame.net/comercio
Usuario: prueba
Contraseña: probando123
NOTA: Que ni se te ocurra usar MIPPO desde Internet Explorer, ya que no he pensado en ese navegador en absoluto a la hora de diseñar MIPPO. Recomiendo Google Chrome (en Firefox sale todo algo más grande de lo normal, pero funciona bien)
Información
Mantente informado en http://www.linuxeame.net o en twitter
http://www.twitter.com/linuxeame
Cualquier duda, sugerencia… o si quieres participar en el desarrollo (de verdad sería genial tener algo de ayuda) escribeme a alexandrefs@linuxeame.net o deja un comentario



