Buscar en el Blog

sábado, 4 de junio de 2011

Validacion de Formularios con jQuery

Hola a todos, en esta ocasión veremos como validar un formulario HTML con la librería jQuery y usando un plugin llamado Validate.

Para esto necesitamos los siguientes archivos:

  1. jQuery: El cual pueden descargarlo desde Aqui
  2. Validate: El plugin de validacion basado en la libreria jQuery, este plugin lo pueden descargar de este enlace.
  3. validacion.js: Este archivo es el que nosotros crearemos.
Manos a la obra:

Primero el script o codigo html de la pagina con el formulario que vamos a validar.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript" src="js/validar.js"></script>
</head>

<body>
<form id="form1" name="form1" method="post" action="www.google.com">
  <p>&nbsp;</p>
  <p>
    <label>nombre
      <input type="text" name="nombre"  />
    </label>
  </p>
  <p>
    <label>email   
      <input name="email" type="text" id="email" />
    </label>
  </p>
  <p>
    <label>contraseña
      <input type="password" name="pass" id="pass" />
    </label>
  </p>
  <p>
    <label>Repetir Contraseña
      <input type="password" name="pass2" id="pass2" />
    </label>
  </p>
  <p>
    <label>
      <input type="submit" name="button" id="button" value="Enviar" />
    </label>
  </p>
  <p>&nbsp;</p>
</form>
</body>
</html>

Lo que nos interesa es el formulario y los componentes, controles o etiquetas que lo conforman, como por ejemplo:

id="form1" 
<input type="text" name="nombre"  />
<input name="email" type="text" id="email" />
<input type="password" name="pass" id="pass" />
  <input type="password" name="pass2" id="pass2" />

Se debe poner atencion a los valores que tienen por "id" y "name", porque son estos valores los que usaremos en la validacion.

Dentro de las etiquetas "head" del documento html, debemos incluir los archivos que valos a usar, como son:
<head>

<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript" src="js/validar.js"></script>
</head>

Primero se debe incluir la libreria jquery., luego el plugin y despues el archivo que nosotros vamos a crear, el cual es validar.js.


Los Archivos con extension "js", los he colocado dentro de una carpeta llamada "js", para tener en orden nuestro archivos, es por eso que cuando incluimos los archivos usamos "js/elarchivoaincluior", donde "js" es el directorio o carpeta donde se ubican los script o archivos a incluir.









Ahora el script validar.js

$(document).ready(inicio);
function inicio()
{
    $("#form1").validate
    (
        {
            rules:
            {
                nombre: {
                        required: true
                        }
                        ,
                email:    {
                        email:true
                        }
                        ,
                pass:    {
                        required:true,
                        minlength:8
                        }
                        ,
                pass2:    {
                        required:true,
                        equalTo: "#pass"
                        }   

            }
            ,
            messages:
            {
                nombre: {
                        required: "* Debe Llenar este campo"
                        }
                        ,
                email:    {
                        email:"Debe ingresar una direccion de correo valido"
                        }
               
                       
            }             
        }
    );
  
   
   
}



El resultado sera el siguiente:









Explicacion del Script:

$(document).ready(inicio);
Con esto le indico que cuando la pagina este lista, ejecuta la funcion inicio.


Dentro de la funcion inicio se encuenta la validacion del formulario.


$("#form1").validate({reglas,mensajes})
En la linea de  $("#form1") indicamos que el formulario que contenga el id form1, sea el que recibira o donde se aplicara la validacion.
dentro de validate(), recibe las reglas de validacion y los mensajes a mostrar, sino se colocan los mensajes a mostrara apareceran los mensajes por defecto, que estan en ingles.


rules:
            {
               Nombrecampo: {
                          instruccion:valor,
                          instruccion2:valor2
                        }
             }




En el codigo anterior lo que haces es definir las reglas por cada campo que contenga el formulario, indicando para ellos el nombre del campo y dentro de llaves las instrucciones de la validacion, si son varios campos, estos se separan por una coma.

  rules:
            {
                nombre: {
                        required: true
                        }
                        ,
                email:    {
                        email:true
                        }
                        ,
                pass:    {
                        required:true,
                        minlength:8
                        }
                        ,
                pass2:    {
                        required:true,
                        equalTo: "#pass"
                        }   

            }





Para separar el bloque de reglas de validacion y los mensages de validacion, se usa la coma.

    rules:
            {
               
              aqui las reglas de validacion     

            }
            , //separadas por una coma
            messages:
            {
               
                aqui los mensajes
                      
            }  

Y finalmente el apartado de los mensages de nuestro script


messages:
            {
                nombre: {
                        required: "* Debe Llenar este campo"
                        }
                        ,
                email:    {
                        email:"Debe ingresar una direccion de correo valido"
                        }
               
                       
            } 

Sino se incluye ningun mensaje para un campo validado, entonces se mostrara el mensaje por defecto.

Explicacion de las instrucciones de validacion:

required:true Quiere decir requerido, que debe ser ingresado si o si.
email:true  Quiere decir que debe ser ingresado un email(correo) valido.
minlength:8 Que el numero de digitos minimos a ser ingresado debe ser 8.
equalTo: "#pass"  Igual a, quiere decir que este campo tiene que ser igual a otro campo, pasado como parametro el id del campo, en este caso el id del campo es pass.


Para mas informacion sobre las instrucciones de validate, pueden ingresar a la pagina oficial de jQuery y buscar el apartado del plugin Validation.


Nos vemos... hasta otra oportunidad.







viernes, 3 de junio de 2011

Linux: Mageia 1 Acaba de salir!

¿Que hace a Mageia diferente?

Mageia es acerca de la gente – la gente que hizo y la gente que usa Mageia la distribución Linux. Somos una buena comunidad, y queremos incluir a nuestros usuarios en la comunidad; las personas que se nos unen lo hace aún mejor.
Mageia es acerca de excelencia técnica – nosotros perseguimos la excelencia, así que la gente de Mageia tendrá la mejor experiencia informática que podramos ofrecerle. No importa si eres programador o estudiante, empresario o administrador de sistemas – cualquiera que sea el uso que le des a tu computadora, nos encantará ayudarte a hacer de ello una grata experiencia. Prueba Mageia 1 y compruébalo por ti mismo.
Mageia es sobre calidad – nuestro lanzamiento promete  ser tan sólida y perfecta como Mandriva al máximo; ése es nuestro legado.
Mageia es abierto – estamos comprometidos con la filosofía del software abierto, estamos abiertos a nuevas personas y nuevas ideas, y tenemos un gobierno abierto en nuestra comunidad.
Mageia es Internacional – nuestra comunidad proviene de todas partes del planeta para ayudar a Mageia a “hablar” varios idiomas. La estructura y sostén de Mageia en la comunidad de usuarios han producido hasta ahora excelentes resultados.
Mageia es sobre la diversidad – Mageia ofrece y mantiene aplicaciones de una amplia variedad de grupos de usuarios – con aplicaciones que abarcan desde los videojuegos y música hasta aplicaciones científicas e ingenieriles.
Mageia es acerca del equilibrio – nosotros luchamos por mantener un balance entre tener desarrollos de vanguardia y una experiencia informática estable.
Mageia Linux

¿Por qué elegir Mageia?

¿Aparte de nuestra gran distribución, pensarías? Somos una gran comunidad, y mejoramos a cada momento. Nos preocupamos por cada uno, en el hacer, tratamos de tener la mejor experiencia de usuario. Nos encantaría darte la bienvenida a nuestra comunidad, mientras que por supuesto vas haciendo la instalación de Mageia sin problemas y la puedas usar con alegría.
¿Qué nos hace diferentes? Somos totalmente comunitarios, con todo lo que ésto implica. Nuestra organización es llevada por la comunidad; ninguna gerencia comercial puede imponernos el camino que Mageia debe seguir; tu como usuario de Mageia podrás tener mayo voz en el futuro de ésta distribución que en ningún otro sitio.

En los hombros de Gigantes

Nuestro equipo de desarrolladores, empaquetadores, contribuidores, traductores, administradores de sistemas y analistas han trabajado todos muy duro para brindarte Mageia 1 dentro del plazo concretado.
Y estamos todos muy agradecidos por el magnífico trabajo de la gente en Mandriva, KDE, GNOME, Xfce, LXDE, el equipo del núcleo Linux, la FSF y todas aquellas personas escribiendo software libre – gracias a todos ustedes por inspirarnos a nosotros en crear grandes programas que son parte de la fundación de Mageia.
Queremos llevarlos muy lejos con nosotros hacia el futuro y hacer de Mageia lo mejor que podamos.

¿Qué es Mageia?

Mageia es ambas cosas, una comunidad y una distribución Linux. Encuentra mas sobre ella en:

martes, 31 de mayo de 2011

CPES09 - Innovación. Seguridad y Redes: Seguridad en el mundo virtual

Innovación - Seguridad y Redes: Seguridad en el mundo virtual

Análisis de BBVA acerca de la seguridad en internet, tipos usuales de estafa y cómo protegernos frente a ellos.

ExplorarSubir vídeo Salir CPCO10 - Robótica: Robot Helicóptero

En esta presentación conocerás cómo se está construyendo en Colombia un robot helicóptero propulsado por cuatro hélices. Este tipo de plataformas se conocen como quadrotor. Conoce como funciona una de estas y qué se debe tener en cuenta para que vuele este tipo de sistemas.

CPCO10 - Software Libre: Shapado Haciendo dinero con Software Libre

Desde hace años, el software libre para muchos estudiantes de ingeniería sistemas es una manera de aprender y comunicar, una pasión y una diversión. Una diversión que requiere mucho tiempo. Pasada la graduación, frente a la necesidad de ganarse la vida, muchos abandonan al desarrollo del software libre para ir a trabajar al "lado oscuro" del software privado de origen extranjero. En esta conferencia, se mostrará como se puede ganar la vida sin dejar a lado sus ideales de libertad y su pasión para el software libre. Se mostrará como se puede ganar dinero a través del uso y desarrollo de software libre, más precisamente el desarrollo de aplicaciones web. Veremos como se puede cumplir usando herramientas libres, simples, poderosas y economicamente accesibles para todos. Se explicará como se puede lograr siendo empleado y también siendo emprendedor en un mundo en el cual la web se hace más y más insustituible y necesaria.

Conferencista
Jorge Cuadrado: Desarrollador y miembro de varios proyectos de software libre tal como Shapado a traves de Ricodigo, DashStudio y Ktoon entre otros. Profesionalmente, desarrollo en Ruby y Javascript para Finario Corp. Tambien me gusta programar en KDE/Qt/C++.

Patrick Aljord: Programador KDE oficial desde 2009. Actualmente vive en Arequipa, Peru. Profesionalmente desarrolla en Ruby, PHP y Javascript para isoHunt.com. Es miembro de Ricodigo donde participa en varios proyectos de software libre como Shapado y varios plugins Rails.

David Cuadrado: Autor y desarrollador de varios proyectos de software libre como Shapado a traves de Ricodigo, MongoMapper, DashStudio y Ktoon. Me gusta Ruby, Erlang, MongoDB y tambien KDE/Qt/C++. Actualmente vivo en Cali y soy director de desarrollo en Finario Corp.


CPCO10 - Robótica: Recicla y Construye

Debido a que un evento tan grande como Campus Party ha de generar mucha basura, contando publicidad, folletos, afiches, cartón, papel, plástico e incluso metal, se pretende utilizar al máximo estos desechos para construir un robot que tenga ciertas especificaciones mínimas.

La idea principal es que a lo largo de varios días, se les va a hacer la propuesta a los participantes del concurso, para que desarrollen un robot con algunos elementos denominados CHATARRA, que serán puestos en una pila en donde cada grupo participante, tendrá que llevar, en el momento de la inscripción, por lo menos 1.5 kilos de chatarra incluyendo motores, mecanismos, tarjetas electrónicas averiadas, juguetes, todo esto en buen estado o dañados, sin estar en estado deplorable (esto lo evaluará uno de los organizadores del concurso), y así mismo, deberá tomar medio kilogramo de la chatarra, perteneciente a otros grupos con el objetivo de construir un robot que solucione el reto.

CPCO10 - Seguridad: BioHacking

Esta conferencia trabaja sobre los conceptos y el lenguaje básico del BioHacking, acercando al espectador al tema, su historia en el mundo y en Colombia, la ética y moral que rigen el BioHacking, y experiencias del presentador, incluyendo explicación de algunos experimentos básicos y de recursos locales para el inicio en la práctica del BioHacking. Se ejecutará un experimento en vivo en la sala, como demostración. Conferencista Martín Alberto Rubio Corredor IAM, IEM, OPSA Ingeniero Electrónico Universidad Javeriana Técnico Electrónico ET Nuclear y Candidato a Ingeniero Nuclear Naval Nuclear Power Training Command NNPTC United States Navy.





jueves, 19 de mayo de 2011

CodeIgniter Framework para PHP

CodeIgniter es un poderoso Framework para PHP que facilita la escritura de código repetitivo, y a comparación de otros Frameworks cómo CakePHP, Symphony o Zend Framework, Codeigniter es más rápido pero menos fácil ya que carace de algunas librerías que los otros frameworks tienen, pero aúin así no deja de ser un buen framework además de que es totalmente extensible y altamente compatible con gran variedad de versiones y configuraciones de PHP.


Este marco de trabajo utiliza el patrón de diseño de software MVC, lo que facilita mucho estructurar la aplicación y su mantenimiento, además posee helpers, bibliotecas, etc. que facilitan y agilizan mucho el desarrollo.

Trabajar con bases de datos es muy fácil, ya que CodeIgniter brinda todo un conjunto de clases muy completas y además está el Scaffolding, que permite desde el navegador, crear y editar los datos de la DB.

¿Por qué usar CodeIgniter?

En realidad existen otros frameworks open source, potentes y ampliamente utilizados como Zend y PHP Cake. Si se trata de un equipo de desarrollo grande y el proyecto también lo es o requiere integración con las APIs de Google o Flickr por ejemplo, creo que lo mejor sería o sí se justificaría usar Zend, pero para los que somos independientes, creo que no tiene tanto sentido, sobre todo si no vamos a usar ni la midad de las opciones.



Pueden encontrar la guia del usuario version en ingles desde AQUI
 o entrar al grupo en español de CodeIgniter

domingo, 24 de abril de 2011

Notepad++ Editor de Texto avanzado

Notepad++ es un editor de texto y de código fuente libre con soporte para varios lenguajes de programación. Solo funciona en Microsoft Windows.
Se parece al Bloc de notas en cuanto al hecho de que puede editar texto sin formato y de forma simple. No obstante, incluye opciones más avanzadas que pueden ser útiles para usuarios avanzados como desarrolladores y programadores.
Se distribuye bajo los términos de la Licencia Pública General de GNU.

 Pagina oficial de Notepad++ http://notepad-plus-plus.org/

easyphp

EasyPHP es un paquete WAMP que incluye el lenguaje PHP, el servidor web Apache, el servidor SQL de MySQL, así como herramientas fáciles de desarrollo como el administrador de BD PhpMyAdmin. No hay nada que configurar. Ya está hecho!
EasyPHP es portátil

Se puede instalar en su sistema o en una unidad USB y desarrollar a nivel local.

Pagina Oficial de Easyphp http://www.easyphp.org/