Foros del Web » Programando para Internet » Javascript »

Necesito mejorar Formulario para Redireccionar a usuarios a su área privada

Estas en el tema de Necesito mejorar Formulario para Redireccionar a usuarios a su área privada en el foro de Javascript en Foros del Web. Hola he creado este pequeño script de redirección que me gustaría mejorar pero no se como, pues mis conocimientos de javascript son limitados. El uso ...
  #1 (permalink)  
Antiguo 16/04/2011, 13:48
 
Fecha de Ingreso: septiembre-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Necesito mejorar Formulario para Redireccionar a usuarios a su área privada

Hola he creado este pequeño script de redirección que me gustaría mejorar pero no se como, pues mis conocimientos de javascript son limitados.

El uso que va a tener es el siguiente he creado un área privada en mi web www.1234abcd.com/ y quiero que cuando un usuario introduzca su nombre de usuario ejemplo:(pablo) en el campo del form este redirija a su pagina de la web donde se le pedira que inroduzca sus datos en el demonio de acceso.

ejemplo: www.1234abcd.com/pablo.php

obviamente cada usuario tiene una pagina en la web con su nombre+.php

Código HTML:
<head>Formulario de Redirección</head>

<body>
<script LANGUAGE="JavaScript">
function Entrar(text) {window.location=text+".php"}
</script>

<form>
<p><input type="text" name="usuario" size="25"> <input type="button" value="Acceder al Área de Usuario"
onClick="Entrar(this.form.usuario.value)" name="button"> </p>
</form>

</body> 

Bien el formulario funciona pero tengo dos problemas el primero el que mas dolor de cabeza me esta dando.

1º El formulario redirecciona correctamente solo si con el ratón hago click sobre el botón, pero si escribo el nombre del usuario en el campo del form y presiono enter no me funciona correctamente y no se como solucionarlo.

2º me gustaría que si no escribo ningún nombre y dejo el campo en blanco y presiono enter o hago click sobre el boton sin escribir nada se redireccione automáticamente a la página en la que se encuentra, para que no de error.

Espero que puedan ayudarme, muchas gracias, un saludo a todos.
  #2 (permalink)  
Antiguo 16/04/2011, 14:56
Avatar de alor86  
Fecha de Ingreso: abril-2009
Mensajes: 110
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: Necesito mejorar Formulario para Redireccionar a usuarios a su área privad

usa el evento onKeyPress en el cuadro de texto
__________________
Cada vez que toco mi código, doy a luz a diez nuevos bugs
  #3 (permalink)  
Antiguo 16/04/2011, 16:32
 
Fecha de Ingreso: septiembre-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Necesito mejorar Formulario para Redireccionar a usuarios a su área privad

Cita:
Iniciado por alor86 Ver Mensaje
usa el evento onKeyPress en el cuadro de texto
Hola gracias por responder, pero si sustituyo onClick por onKeyPress el botón no funciona y ademas al presionar enter, me da el mismo error, voy a tratar de explicar el error.

Si hago click sobre el boton con el raton o tabulando con el teclado sobre el boton, la redireccion se efectua correctamente.

Ejemplo: www.1234abcd.com/redireccionar.php (en esta pagina donde esta cargado el script)

introduzco el nombre de "pablo" en el campo del form y me redirecciona a:

www.1234abcd.com/pablo.php

Pero si escribo "pablo" en el campo del form y directamente presiono enter ocurre lo siguiente, no me redirecciona correctamente ya que la dirección de la url pasaría a ser la siguiente.

www.1234abcd/redireccionar.php?usuario=pablo (no entiendo porque pasa esto)

Espero haberme explicado bien gracias por tu ayuda, un saludo.
  #4 (permalink)  
Antiguo 16/04/2011, 16:56
Avatar de alor86  
Fecha de Ingreso: abril-2009
Mensajes: 110
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: Necesito mejorar Formulario para Redireccionar a usuarios a su área privad

Código Javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3.  
  4. <head>
  5.     <script type="text/javascript">
  6.         function Entrar(text) {
  7.             if(text=="")
  8.                 alert("llene el campo");
  9.             else    
  10.                 window.location=text+".php"
  11.             return false;
  12.         }
  13.     </script>
  14. </head>
  15.  
  16. <body>
  17.     <form>
  18.         <p>
  19.             <input type="text" name="usuario" size="25" />
  20.             <input type="submit" value="Acceder al Área de Usuario"   onclick=" return Entrar(this.form.usuario.value)" name="button" />
  21.         </p>
  22.     </form>
  23.  
  24. </body>
  25. </html>
prueba asi
__________________
Cada vez que toco mi código, doy a luz a diez nuevos bugs
  #5 (permalink)  
Antiguo 16/04/2011, 19:25
 
Fecha de Ingreso: septiembre-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Necesito mejorar Formulario para Redireccionar a usuarios a su área privad

Mil gracias por tu ayuda, y por resolverme el problema me estaba volviendo loco y no daba con la solución, me ha gustado mucho mas tu solución de cuando se deja el campo en blanco, es mejor la solución que tu le has dado que la que yo estaba buscando de redireccionar a la misma página.

Ya acabo de adaptar el codigo a los campos asignando toda la demás metralla colores tipo de fuente fondo tamaño etc... y funciona de lujo, no sabes cuanto te lo agradezco.

He visto ahora despues de que tu me hallas dado la solución al compararlo que el problema lo tenia aquí
Código HTML:
type="submit"
yo tenia puesto
Código HTML:
type="botton"
Finalmente el codigo a quedado así

Código HTML:
<html>
 <head>
   <script type="text/javascript">
        function Entrar(text) {
            if(text=="")
                alert("No ha introducido ningún nombre de Usuario");
            else    
                window.location=text+".php"
            return false;
        }
  </script>
 </head>

<body>
 <form><center><br><br><br><br><br><br><br><tr>

  <td><br><font color="white"; style="width: 200px; font: 14px Segoe UI"/>Introducir Nombre de Usuario</font> </br></td>

<td><br><br> <p><form id="form" ><fieldset><input type="text" name="usuario" value="" style="width: 210px; font: 13px Segoe UI; color: #000000; background: #FFFFFF url('res/imopen.gif') no-repeat 3px; padding: 3px 3px 3px 21px; border: 1px solid #000000; vertical-align: middle" /> 

<input type="submit" value="Acceder al Área de Cliente" style="font: 12px Segoe UI; color: #E0E0E0; background-color: #006A9D; padding: 2px 4px 2px 4px; border: 1px solid #E0E0E0; vertical-align: middle; cursor: pointer; "

onClick=" return Entrar(this.form.usuario.value)" name="button"></p> </br></br></td>

</tr></br></br></br></br></br></br></br></center></form>
</body>
</html> 
Muchas Gracias un Saludo
  #6 (permalink)  
Antiguo 16/04/2011, 19:30
Avatar de alor86  
Fecha de Ingreso: abril-2009
Mensajes: 110
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: Necesito mejorar Formulario para Redireccionar a usuarios a su área privad

de nada, para eso esta el foro para ayudarnos y que bien que te haya servido mi ejemplo
__________________
Cada vez que toco mi código, doy a luz a diez nuevos bugs
  #7 (permalink)  
Antiguo 20/04/2011, 15:09
 
Fecha de Ingreso: septiembre-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Necesito mejorar Formulario para Redireccionar a usuarios a su área privad

Gracias al usuario Alor86 el hace unos días puede resolver el problema del que trata este hilo, pero me gustaría realizar dos nuevas preguntas a los usuarios a ver si me ayudan a resolver otro pequeño problema y ejorar el codigo un poco mas.

La cuestión es la siguiente, este codigo para redireccionar a los usuarios al área privada funciona correctamente con los siguientes navegadores sin ningún problema Firefox, 3.6 y 4, Internet Explorer 9, Chrome 10, Opera, y Safari, pero con internet explorer 8 ¡No!, me ocurre el mismo problema que tenia el otro día, ¿alguien sabría decirme o tendría alguna idea de porque puede suceder esto en IE8?

Problema del otro dia
Cita:
Hola gracias por responder, pero si sustituyo onClick por onKeyPress el botón no funciona y ademas al presionar enter, me da el mismo error, voy a tratar de explicar el error.

Si hago click sobre el botón con el ratón o tabulando con el teclado sobre el botón, la redirección se efectúa correctamente.

Ejemplo: www.1234abcd.com/redireccionar.php (en esta pagina donde esta cargado el script)

introduzco el nombre de "pablo" en el campo del form y me redirecciona a:

www.1234abcd.com/pablo.php

Pero si escribo "pablo" en el campo del form y directamente presiono enter ocurre lo siguiente, no me redirecciona correctamente ya que redirige a la dirección de URL siguiente, la cual no es correcta.

www.1234abcd/redireccionar.php?usuario=pablo (no entiendo porque pasa esto)
Codigo en versión simplificado que si funciona con todos los navegadores menos con Internet Explorer 8

Cita:
Iniciado por alor86 Ver Mensaje
Código Javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3.  
  4. <head>
  5.     <script type="text/javascript">
  6.         function Entrar(text) {
  7.             if(text=="")
  8.                 alert("llene el campo");
  9.             else    
  10.                 window.location=text+".php"
  11.             return false;
  12.         }
  13.     </script>
  14. </head>
  15.  
  16. <body>
  17.     <form>
  18.         <p>
  19.             <input type="text" name="usuario" size="25" />
  20.             <input type="submit" value="Acceder al Área de Usuario"   onclick=" return Entrar(this.form.usuario.value)" name="button" />
  21.         </p>
  22.     </form>
  23.  
  24. </body>
  25. </html>
Otra pregunta es si se podría hacer que si el "área" a la cual se esta redirigiendo no existe, osea si un usuario por ejemplo escribe mal su usuario, cuando aparece el clásico error 404 la pagina no encontrada, retorne a la pagina "identificarse.php" automáticamente que ee la que contiene este script de redirección.

Ejemplo: si un el usuario pablo escribe "pablo" en el campo del form este es redirigido a la url:

www.1234abcd.com/pablo.php todo correcto

pero si el usuario escribe por error "pabli" sera redirigido a :

www.1234abcd.com/pabli.php que no existe y dará el error 404 se puede identificar este error desde el script para que si ocurre vuelva automáticamente a la pagina del script.

Un saludo a todos y muchas gracias por todo.

Etiquetas: mejorar, privada, redireccionar, usuarios, formulario
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 12:32.