Foros del Web » Programando para Internet » PHP »

formulario de contacto, redirigir a index, cuando se ha rellenado

Estas en el tema de formulario de contacto, redirigir a index, cuando se ha rellenado en el foro de PHP en Foros del Web. HOla compañeros, me haría falta saber como redireccionar a index,php, cuando el formulario ha sido enviado, tengo un "gracias por rellenar...etc...etc...." con un echo, y ...
  #1 (permalink)  
Antiguo 23/03/2011, 15:03
 
Fecha de Ingreso: noviembre-2007
Mensajes: 533
Antigüedad: 16 años, 5 meses
Puntos: 1
formulario de contacto, redirigir a index, cuando se ha rellenado

HOla compañeros, me haría falta saber como redireccionar a index,php, cuando el formulario ha sido enviado, tengo un "gracias por rellenar...etc...etc...." con un echo, y despues quiero que se redireccione a index.php , pero he intentado poner un header, me da error, pero me han comentado que es por ponerlo detras de echo, como lo puedo hacer con php?


Espero respuesta.
Gracias.
  #2 (permalink)  
Antiguo 23/03/2011, 15:07
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

Código PHP:
Ver original
  1. echo "<script>alert('gracias por rellenar...etc...etc...'); location.href='index.php';</script>";

Prueba con eso, saludos.
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #3 (permalink)  
Antiguo 23/03/2011, 15:08
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

la idea sería hacerlo con header("location: url");, pero para ello no puedes dumpear información a la salida como el mensaje que quieres, la solución en este caso sería colocar el echo pero dumpear después una función javascript (dentro del bloque <script></script>) con retardo con settimeout y usar window.location="url"; para redireccionar

PD: la respuesta anterior también vale, se me adelantaron
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #4 (permalink)  
Antiguo 23/03/2011, 15:12
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

Pues es exactamente lo que te dicen... cuando imprimes algo o das alguna salida antes del header inmediatamente te saca error cannot modify header bla bla bla

Hay varias formas muy simples de hacerlo:

1. Quitale el echo y ponle el header y en el index colocas el mensaje que quieres mostrar.

2. lo puedes hacer con javascript asi:

Cita:
<script type="text/javascript">
window.location="../index.php";
</script>
3. en el header coloca una variable GET para saber si muestras o no el mensaje en el index asi:

Cita:
header ("Location: index.php?msg=1")
Y en el index.php colocas esto:

Cita:
if ($_GET['msg'] == "1"){
echo "Lo que te de la gana...";
}
Espero haberte ayudado...

PD: Lo de la ventanita de javascript también es valido
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???

Última edición por jotaincubus; 23/03/2011 a las 15:14 Razón: mas informacion
  #5 (permalink)  
Antiguo 24/03/2011, 14:26
 
Fecha de Ingreso: noviembre-2007
Mensajes: 533
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

Cita:
Iniciado por jotaincubus Ver Mensaje
Pues es exactamente lo que te dicen... cuando imprimes algo o das alguna salida antes del header inmediatamente te saca error cannot modify header bla bla bla

Hay varias formas muy simples de hacerlo:

1. Quitale el echo y ponle el header y en el index colocas el mensaje que quieres mostrar.

2. lo puedes hacer con javascript asi:



3. en el header coloca una variable GET para saber si muestras o no el mensaje en el index asi:



Y en el index.php colocas esto:



Espero haberte ayudado...

PD: Lo de la ventanita de javascript también es valido


La opcion 2, que me indicas, en que parte del código la pongo? en eso dudo...
  #6 (permalink)  
Antiguo 24/03/2011, 14:48
 
Fecha de Ingreso: noviembre-2007
Mensajes: 533
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

Cita:
Iniciado por bUllan9ebrio Ver Mensaje
Código PHP:
Ver original
  1. echo "<script>alert('gracias por rellenar...etc...etc...'); location.href='index.php';</script>";

Prueba con eso, saludos.

Esta opcion la he probado y funciona, pero creo que es más "estetica", la opcion de que no salte un alert, sino que en la web lo agradezca y te redirecciona a la que yo vea...no? , cual podría ser esa opcion?
  #7 (permalink)  
Antiguo 25/03/2011, 07:14
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

por lo menos para mi , es una buena opcion, tu buscas algo como , el login de foros del web??
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #8 (permalink)  
Antiguo 24/09/2012, 16:23
 
Fecha de Ingreso: septiembre-2012
Mensajes: 1
Antigüedad: 11 años, 7 meses
Puntos: 1
De acuerdo Respuesta: formulario de contacto, redirigir a index, cuando se ha rellenado

hola... soy nueva en esta comunidad... y vengo a agradecer a bUllan9ebrio por su ayuda... algo practico y consinso

Etiquetas: contacto, index, redirigir, rellenado, 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




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