Foros del Web » Programando para Internet » Javascript »

Verificar password

Estas en el tema de Verificar password en el foro de Javascript en Foros del Web. Hola buenos dias... Me gustaria saber como verificar que las contraseñas colocadas en dos campos de texto sean iguales, y en dado caso de que ...
  #1 (permalink)  
Antiguo 06/06/2012, 09:08
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Verificar password

Hola buenos dias... Me gustaria saber como verificar que las contraseñas colocadas en dos campos de texto sean iguales, y en dado caso de que no lo sean, que no permita enviar el formulario... Muchas gracias
  #2 (permalink)  
Antiguo 06/06/2012, 09:37
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Verificar password

en el evento onsubmit del formulario llamas a la funcion retornando su salida:

<form onsubmit="return verifica(this);" ... >

luego en dicha función verificas si ambos campos son iguales, de lo contrario retornas false, con ello el form no se envía.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 06/06/2012, 10:04
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Cita:
Iniciado por maycolalvarez Ver Mensaje
en el evento onsubmit del formulario llamas a la funcion retornando su salida:

<form onsubmit="return verifica(this);" ... >

luego en dicha función verificas si ambos campos son iguales, de lo contrario retornas false, con ello el form no se envía.

Ya lo intente agregandole el this y me esta funcionando... Ahora quiero que a la hora de que sean iguales las contraseñas, me devuelva al index.php para que inicie sesion... Tengo este codigo

Código Javascript:
Ver original
  1. function comprobarClave(){
  2.         password1 = document.form1.password.value
  3.         password2 = document.form1.password2.value
  4.  
  5.         if (password1 == password2){
  6.             alert("La clave ha sido cambiada con exito");
  7.             return true;
  8.             window.location='index.php';
  9.         }
  10.         else{
  11.             alert("Las dos claves son diferentes. Por favor, verifique e intente nuevamente");
  12.             return false;          
  13.         }
  14. }

Muchas gracias
  #4 (permalink)  
Antiguo 06/06/2012, 12:18
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Verificar password

1 - las referencias directas no son soportadas por algunos navegadores, por ello use las colecciones document.forms['name_form'].elements['name_input']

2 - use var para declarar variables, use el punto y coma al final de la línea ;

3 - si paso this a la función ya pase la instancia del formulario, por lo tanto omito document.forms[]:


function comprobarClave(vform) { // form es el this, es decir el form!
var password1 = vform.elements['password']; //prefiero usar el objeto
var password2 = vform.elements['password2'];

3 - si retorna true al evento onsubmit, se envía el form según su action, NO necesita window.location:

Código Javascript:
Ver original
  1. if (password1.value == password2.value){
  2.     alert("La clave ha sido cambiada con exito");
  3.     return true;
  4.     // window.location='index.php'; //Esto NO es necesario
  5. }
  6. else{
  7.     alert("Las dos claves son diferentes. Por favor, verifique e intente nuevamente");
  8.     return false;
  9. }

consulte un manual de Javascript y manejo del DOM
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 06/06/2012, 12:30
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Cita:
Iniciado por maycolalvarez Ver Mensaje
1 - las referencias directas no son soportadas por algunos navegadores, por ello use las colecciones document.forms['name_form'].elements['name_input']

2 - use var para declarar variables, use el punto y coma al final de la línea ;

3 - si paso this a la función ya pase la instancia del formulario, por lo tanto omito document.forms[]:


function comprobarClave(vform) { // form es el this, es decir el form!
var password1 = vform.elements['password']; //prefiero usar el objeto
var password2 = vform.elements['password2'];

3 - si retorna true al evento onsubmit, se envía el form según su action, NO necesita window.location:

Código Javascript:
Ver original
  1. if (password1.value == password2.value){
  2.     alert("La clave ha sido cambiada con exito");
  3.     return true;
  4.     // window.location='index.php'; //Esto NO es necesario
  5. }
  6. else{
  7.     alert("Las dos claves son diferentes. Por favor, verifique e intente nuevamente");
  8.     return false;
  9. }

consulte un manual de Javascript y manejo del DOM
Ya le hice los cambios correspondientes... Muchas gracias por tu ayuda... Lo del window.location lo pongo porque quiero que ese formulario se rediriga a otra pagina para que el usuario no se quede viendo siempre la misma pagina...
  #6 (permalink)  
Antiguo 06/06/2012, 12:42
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Verificar password

Cita:
Iniciado por dragonfire256 Ver Mensaje
Ya le hice los cambios correspondientes... Muchas gracias por tu ayuda... Lo del window.location lo pongo porque quiero que ese formulario se rediriga a otra pagina para que el usuario no se quede viendo siempre la misma pagina...
para eso es el action:

<form action="index.php" method="POST" onsubmit="return comprobarClave(this);" > ..
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #7 (permalink)  
Antiguo 06/06/2012, 12:45
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Cita:
Iniciado por maycolalvarez Ver Mensaje
para eso es el action:

<form action="index.php" method="POST" onsubmit="return comprobarClave(this);" > ..
El detalle es que lo estoy procesando en la misma pagina
  #8 (permalink)  
Antiguo 06/06/2012, 15:25
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Verificar password

entonces sólo necesita desde PHP verificar si fue enviado un post, con isset()
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #9 (permalink)  
Antiguo 06/06/2012, 15:31
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Cita:
Iniciado por maycolalvarez Ver Mensaje
entonces sólo necesita desde PHP verificar si fue enviado un post, con isset()
Ya esta hecho... Dejame postearte el codigo:

Código HTML:
Ver original
  1. <script type="text/javascript">
  2.     function comprobarClave(form1){
  3.         var password1 = document.forms['form1'].elements['password'];
  4.         var password2 = document.forms['form1'].elements['password2'];
  5.  
  6.         if (password1.value == password2.value){
  7.             alert("La clave ha sido cambiada con exito");
  8.             return true;
  9.         }
  10.         else{
  11.             alert("La contraseña no coincide. Por favor, verifique e intente nuevamente");
  12.             return false;          
  13.         }
  14. }

Código HTML:
Ver original
  1. <form id="form1" name="form1" method="post" action="" onSubmit="return comprobarClave(this)">

Código PHP:
Ver original
  1. <?php
  2.     if(isset($_POST['Establecer_Password']))
  3.     {
  4.         $establecer="UPDATE users SET password='{$_POST['password2']}' where nombre_usuario='{$_POST['usuarioE']}'";
  5.         $update=mysql_query($establecer,$con);
  6.     }
  7. ?>

Lo que no quiero es que se quede en la misma pagina despues de procesar el formulario... No se si estas entendiendo mi idea... Muchas gracias
  #10 (permalink)  
Antiguo 08/06/2012, 07:11
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Alguna sugerencia?
  #11 (permalink)  
Antiguo 08/06/2012, 07:17
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Verificar password

Cita:
Iniciado por dragonfire256 Ver Mensaje
Alguna sugerencia?
Excelente, te has ganado karma

Bueno, como estás aprendiendo, te sugiero leer acerca de:

AJAX
MVC
Frameworks de desarrollo JS: jQuery, Mootools, Prototype, etc.
Frameworks de desarrollo PHP: Symfony2, ZendFW, CakePHP, YII, Codeigniter, entre muchos otros.

No es que te los aprendas todos, simplemente evalúa cual te gusta más para aprender, Codeigniter es ideal para entender MVC en poco tiempo, saludos
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #12 (permalink)  
Antiguo 08/06/2012, 07:23
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Cita:
Iniciado por maycolalvarez Ver Mensaje
Excelente, te has ganado karma

Bueno, como estás aprendiendo, te sugiero leer acerca de:

AJAX
MVC
Frameworks de desarrollo JS: jQuery, Mootools, Prototype, etc.
Frameworks de desarrollo PHP: Symfony2, ZendFW, CakePHP, YII, Codeigniter, entre muchos otros.

No es que te los aprendas todos, simplemente evalúa cual te gusta más para aprender, Codeigniter es ideal para entender MVC en poco tiempo, saludos
Parece interesante tu propuesta de aprender frameworks php pero ando en medio de un proyecto y no puedo darme el "lujo" de aprender uno y rediseñarlo por completo... Con los escasos conocimientos que tengo de javascript y las ayudas que me han dado en el foro he podido avanzar en el proyecto... Mas sin embargo me encuentro "trancado" en esta parte... El ultimo codigo funciona bien, pero quiero que me redireccione cuando se cambie la clave con exito, para que el usuario sea redirigido a otra pagina, para que no se quede con la sensacion de "Si, cambie la clave, sigo en la misma pagina y ahora que"... No se si entiendes mi idea... Muchas gracias
  #13 (permalink)  
Antiguo 08/06/2012, 07:28
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Verificar password

no claro, no es para que refactorices todo el proyecto, sigue como vas!!!, pero tenlo en cuenta para cuando tengas "algo de tiempo", hoy en día el mercado laboral en Venezuela está más exigente (y más en Caracas ) y usar FW forma parte de las buenas practicas, saludos y mucho éxito.

que bueno es ver más Compatriotas por aquí
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #14 (permalink)  
Antiguo 08/06/2012, 07:31
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Cita:
Iniciado por maycolalvarez Ver Mensaje
no claro, no es para que refactorices todo el proyecto, sigue como vas!!!, pero tenlo en cuenta para cuando tengas "algo de tiempo", hoy en día el mercado laboral en Venezuela está más exigente (y más en Caracas ) y usar FW forma parte de las buenas practicas, saludos y mucho éxito.
Claro, lo tomaria como un hobby... Pero eso seria despues que termine el proyecto y tenga tiempo libre... Como haria para solucionar lo que te planteo? Lo de window.location no sirve en este caso... Y la modificacion de header no se podria aplicar debido a que existen salidas html, en este caso, el propio formulario... Muchas gracias por tu tiempo
  #15 (permalink)  
Antiguo 08/06/2012, 12:45
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Ninguna sugerencia?
  #16 (permalink)  
Antiguo 11/06/2012, 07:14
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Disculpa que los siga molestando con este tema, pero no he podido avanzar... Alguien me da alguna sugerencia? Muchas gracias
  #17 (permalink)  
Antiguo 11/06/2012, 08:49
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Mientras consigo como resolver el problema, me surgio otro... Como haria para verificar que no esten vacios?... Porque el codigo que me sugirieron, verifica el valor de ambos campos de texto... Pero si ambos estan vacios, igual pasa... Muchas gracias

Este es el codigo que tengo:

Código Javascript:
Ver original
  1. if (password1.value == password2.value) && (password1.value!=="") && (password2.value!==""){
  2.             alert("La clave ha sido cambiada con exito");
  3.             return true;
  4.             document.location.href="index.php";
  5.         }
  6.         else{
  7.             alert("La contraseña no coincide. Por favor, verifique e intente nuevamente");
  8.             return false;          
  9.         }
  #18 (permalink)  
Antiguo 11/06/2012, 12:29
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 2 meses
Puntos: 9
Respuesta: Verificar password

Ya le encontre la solucion al problema... Como en javascript no se pueden verificar que los campos de texto esten vacios, hare la comprobacion en php a la hora de enviar el formulario... Y como los formularios "autoprocesados" no funcionan con javascript, voy a crear un archivo nuevo en php donde procese los datos y se redireccionen a traves de header... Muchas gracias igual... Hasta luego

Etiquetas: formulario, password, verificar
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 09:26.