Foros del Web » Programando para Internet » Javascript »

Validar contraseña problema

Estas en el tema de Validar contraseña problema en el foro de Javascript en Foros del Web. HOLA TENGO PROBLEMA CON ESTE CODIGO PARA HACER UNA VALIDACION DE CONTRASEÑA, ESPERO AYUDA, DEJO LOS ARCHIVOS HTML Y JS, SALDS. HTML: <!DOCTYPE html PUBLIC ...
  #1 (permalink)  
Antiguo 26/06/2010, 23:01
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Exclamación Validar contraseña problema

HOLA TENGO PROBLEMA CON ESTE CODIGO PARA HACER UNA VALIDACION DE CONTRASEÑA, ESPERO AYUDA, DEJO LOS ARCHIVOS HTML Y JS, SALDS.

HTML:

<!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&iacute;tulo</title>
</head>
<link rel="stylesheet" type="text/css" href="formulario.css">
<script type="text/javascript" language="javascript" src="formulario.js"></script>

<body>


<form method="post" id="form1">
<div>
<label>Nombre</label>
<input type="text" name="name" />
</div>
<div>
<label>Email</label>
<input type="text" name="email" />
</div>
<div>
<label>Contraseña</label>
<input type="password" name="pass1" />
</div>
<div>
<label>Confirme Contraseña</label>
<input type="password" name="pass2" />
</div>
<input type="button" value="Enviar" onclick="Validate()" />
</form>
</body>
</html>

ARCHIVO JS:

// JavaScript Document
function Validate()
{
var f = document.getElementById("form1");
var errors = document.getElementsByTagName("span");
var end = errors.length;
var hasError = Array();

for(i=0; i<end; i++)
{
var element = errors[0];

element.parentNode.removeChild(element);
}

if(regExpValidation(f.name, /^\w$/, "Complete el nombre"))
hasError.push(f.name);

if(regExpValidation(f.email, /^\D+([\.-a-z0-9]+)*@\D+([\.-a-z0-9]+)*(\.\D{2,3})+$/ , "Complete el email"))
hasError.push(f.email);

if(regExpValidation(f.pass1, /^(\d{1,8})$/ , "Clave Erronea - Min: 1 Digitos - Max: 8 Digitos"))
hasError.push(f.pass1);


if(hasError.length > 0)
alert("Verifique los errores antes de continuar");
else
f.submit();
}

/*
* regExpValidation
* Esta función devuelve true en caso que el valor del campo
* de formulario enviado no coincide con la expresión regular
* indicada.
*
* return @boolean
*
* params @obj form element
* @errorCondition exp. regular
* @errorMessage string con mensaje de error
**/

function regExpValidation( obj, errorCondition, errorMessage )
{
if(!errorCondition.test(obj.value))
{
var e = document.createElement("span");
e.className = "error";
e.innerHTML = errorMessage;

obj.parentNode.appendChild(e);

return true;
}

return false;
}
  #2 (permalink)  
Antiguo 27/06/2010, 10:45
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Validar contraseña problema

no puedes simplemente poner un titulo, el codigo y olvidarte de dar una explicacion de la situacion. el codigo no ayuda a entender el problema porque a decir verdad tienes varios en cuanto a conceptos, a no ser que sea intencionalmente asi como lo quieres. explica cual es el problema.

nota: no se cual es tu insistencia en repetir tu mensaje en otro tema. ¿no te has fijado que te han borrado los anteriores porque esta repetido? tecnicamente creastes primero este tema antes de la primera vez repetir el mensaje.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 27/06/2010, 17:25
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Validar contraseña problema

Disculpas lo repeti por que crei que este tema jamas seria visto por nadie, te digo el problema es que no se como validar las contraseñas, osea como cualquier formulario de registro que diga repetir contraseña y si no es la misma la marque como error, si no que la envie, se entiende? mil disculpas por lo anterior, espero que me puedas ayudar, ya que no se como hacerlo con ese codigo, fijate que abajo hay una funcion que se utiliza en todos los campos, lo cual ya tiene asignada varias acciones, saludos, Sebastian.
  #4 (permalink)  
Antiguo 27/06/2010, 22:20
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Validar contraseña problema

Alquien me puede ayudar con este problema que postie?

Gracias, por favor!
  #5 (permalink)  
Antiguo 28/06/2010, 08:04
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Validar contraseña problema

Código Javascript:
Ver original
  1. if(document.forms[0].elements['pass1'].value!=document.forms[0].elements['pass2'].value){
  2.  alert('Las contraseñas deben ser iguales');
  3.  return false;
  4. }
  #6 (permalink)  
Antiguo 28/06/2010, 11:39
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Validar contraseña problema

Te queria preguntar de donde sale el forms y el elements del codigo
que me pasaste? espero tu respuesta, o decime por que debo suplantar por que no entiendo bien, gracias, Sebastian.
  #7 (permalink)  
Antiguo 28/06/2010, 12:25
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Validar contraseña problema

Es la forma 'adecuada' de referirse a los elementos de los forms. Puede ser:
Código Javascript:
Ver original
  1. document.forms[0].elements[0];
Donde 0 es la posición del array con la colección de forms y elementos de cada form del documento. O bien:
Código Javascript:
Ver original
  1. document.forms['nombreDelForm'].elements['nombreDelElement'];
Lo puse así porque al no tener id el input, tenía que acceder vía name, pero el form tampoco tenía name, así que accedí mediante la colección de forms del document.
Saludos (:
  #8 (permalink)  
Antiguo 28/06/2010, 14:24
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Validar contraseña problema

Caro el tema que yo quiero que me funcione como los demas campos, que si hay error me escriba al lado con la funcion ya creada que hay, me entendes? ese es el tema, no se si me explico.
  #9 (permalink)  
Antiguo 28/06/2010, 14:36
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Validar contraseña problema

con la función regExpValidation no veo forma en que puedas validar la igualdad de dos strings, en este caso de las contraseñas.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #10 (permalink)  
Antiguo 28/06/2010, 14:40
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Validar contraseña problema

entonces para que funcione como los demas campos, que salga al lado del campo el error viste que esa funcion ya esta armada, tendria que armar otra funcion aparte para la contraseña que funcione igual aregExpValidation? por eso te decia, eso quiero hacer yo, para que el formulario funcione igual, esto es todo practica de un curso que estoy haciendo, el profe me hizo eso, pero a mi se me ocurrio ese tema de las claves, que es valido, por que se usa mucho, pero ahi me trunque.
  #11 (permalink)  
Antiguo 28/06/2010, 14:56
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Validar contraseña problema

tendrías que hacer otra función porque, como ya mencioné, tal como tienes la serie de instrucciones no veo forma en que puedas comparar la igualdad de dos strings. lo otro que se me ocurre es que la función tenga un comportamiento dinámico. es decir, en base al tipo de información que se le pase como argumentos se realice una serie de instrucciones u otra. por ejemplo, el primer argumento es la referencia de un elemento. digamos que en lugar de pasar la referencia de un solo elemento creas un array o un HTMLCollection donde ademas de validar con la expresión regular también valide la igualdad de los valores de cada uno. pero por supuesto, para ello tienes que implementar instrucciones que determinen el tipo de valor que le estas pasando como argumento a la función.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #12 (permalink)  
Antiguo 28/06/2010, 17:30
 
Fecha de Ingreso: marzo-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Validar contraseña problema

Caro se me complica muchisimo ya que soy principiante en esto, tmb estaba intentando insertar una imagen en javascript que cuando tire error no solo diga con el innerHTML inserte su nombre, si no que adelante salga una cruz o simbolo de error, no se como hacer eso tampoco, estoy al horno me parece :(...
  #13 (permalink)  
Antiguo 28/06/2010, 18:27
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Validar contraseña problema

Si entendí bien, necesitas que si no se validan los campos aparezcan ciertos mensajes de error ¿no? Pues entonces no es muy complicado.
Código CSS:
Ver original
  1. .error {color:#F00; font-size:20px; display:none;}
Código HTML:
Ver original
  1. <form name='form1' action='' method='post' onsubmit='return validar();'>
  2.  Nombre:<input type='text' id='nombre' />
  3.  <div class='error' id='id1'>
  4.   Inserte nombre&nbsp;<img src='cruzerror.jpg' alt='error' />
  5.  </div>
  6.  Apellido:<input type='text' id='apellido' />
  7.  <div class='error' id='id2'>
  8.   Inserte apellido&nbsp;<img src='cruzerror.jpg' alt='error' />
  9.  </div>
  10.  Contraseña:<input type='text' id='psw' />
  11.  <div class='error' id='id3'>
  12.   Introduzca contrase&ntilde;a&nbsp;<img src='cruzerror.jpg' alt='error' />
  13.  </div>
  14.  Repita contraseña:<input type='text' id='psw2' />
  15.  <div class='error' id='id4'>
  16.   Compruebe contrase&ntilde;a&nbsp;<img src='cruzerror.jpg' alt='error' />
  17.  </div>
  18.  <input type='submit' value='Enviar' />
  19. </form>
Código Javascript:
Ver original
  1. function validar(){
  2.  var nombre = document.getElementById('nombre');
  3.  var apellido = document.getElementById('apellido');
  4.  var psw = document.getElementById('psw');
  5.  var confir = document.getElementById('psw2');
  6.  var id1 = document.getElementById('id1');
  7.  var id2 = document.getElementById('id2');
  8.  var id3 = document.getElementById('id3');
  9.  var id4 = document.getElementById('id4');
  10.  if(nombre.value.length==0){
  11.   id1.style.display = 'block';
  12.   return false;
  13.  }
  14.  if(apellido.value.length==0){
  15.   id2.style.display = 'block';
  16.   return false;
  17.  }
  18.  if(psw.value.length==0){
  19.   id3.style.display = 'block';
  20.   return false;
  21.  }
  22.  if(confir.value.length==0){
  23.   id4.style.display = 'block';
  24.   return false;
  25.  }
  26.  if(psw.value != confir.value){
  27.   id4.style.display = 'block';
  28.   return false;
  29.  }
  30. }

Saludos (:

Última edición por _cronos2; 28/06/2010 a las 18:40

Etiquetas: contraseña
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:29.