Foros del Web » Programando para Internet » PHP »

Como redirecciono despues de Submit?

Estas en el tema de Como redirecciono despues de Submit? en el foro de PHP en Foros del Web. Tengo un contact.php que seria la pagina con el formulario.. con POST y hacia contac_script.php que es el siguiente: Código PHP: <?php $from =  "$email" ...
  #1 (permalink)  
Antiguo 28/09/2011, 15:34
 
Fecha de Ingreso: marzo-2007
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 16
Como redirecciono despues de Submit?

Tengo un contact.php que seria la pagina con el formulario.. con POST y hacia contac_script.php que es el siguiente:

Código PHP:
<?php
$from
"$email";
$ok false;
$name trim($_POST['name']);
$lastname trim($_POST['lastname']);
$email trim($_POST['email']);
$to $_POST['to'];
$msg $_POST['text'];
$subject $name.' '.$lastname;

if ((!empty(
$name)) && (!empty($lastname)) && (!empty($email)) && (!empty($to)) && (!empty($text)) && (eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]"$email)))
   { 
$oktrue;}

 else 
   { 
$okfalse;}
    
    
if (
$oktrue)
   {
mail($to$subject$msg'From:' .$email);
   
header ('http://www.thechicmagazine.com/contact_sent.php');

   }
?>
Tambien tengo tengo que se llama contat_sent.php que seria la pagina a mostrar cuando el mensaje se haya mandado...

Quise usar header(...) para redireccionar a "contact_sent.php" al hacer submit pero me sale este mensaje...

Código HTML:
Warning: Cannot modify header information - headers already sent by (output started at /home/content/66/7966166/html/w_thechic/contact_script.php:9) in /home/content/66/7966166/html/w_thechic/contact_script.php on line 28
Osea quiero que cuando uno complete el formulario "conctact.php" se mande con la programacion que esta en el archivo "contact_script.php" y que este archivo muestre "contact_sent.php" que sera una pagina con mensajes de confirmacion...

Alguna ayuda?

gracias
  #2 (permalink)  
Antiguo 28/09/2011, 15:36
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Como redirecciono despues de Submit?

Te falta el Location y antes del header no puedes imprimir nada.

Código PHP:
Ver original
  1. header ('Location: http://www.thechicmagazine.com/contact_sent.php');

Tienes problema con los condicionales

Código PHP:
Ver original
  1. if ($ok= true) { ...

= asignación
== comparación
=== Idéntico

Edit: la función eregi es obsoleta

Cita:
Esta función ha sido declarada OBSOLETA desde PHP 5.3.0. Su uso está totalmente desaconsejado.
se recomienda usar las funciones preg_*

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 28/09/2011 a las 15:43
  #3 (permalink)  
Antiguo 28/09/2011, 15:45
 
Fecha de Ingreso: marzo-2007
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 16
Respuesta: Como redirecciono despues de Submit?

si es verdad y ya corregi los condicionales, pero te referis a que no puedo poner ningun echo o print cierto?? en ese caso, no tengo ninguno e igual me sigue saliendo este error
  #4 (permalink)  
Antiguo 28/09/2011, 16:01
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Como redirecciono despues de Submit?

No puede haber código HTML arriba, revisa que no hayan espacios y que el archivo esté guardado en UTF-8 sin BOM. No olvides colocar el location y lee esto:

http://www.forosdelweb.com/wiki/PHP:...lready_sent%3F
http://www.forosdelweb.com/wiki/PHP:...n_line_4%22%3F
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 28/09/2011, 16:55
 
Fecha de Ingreso: marzo-2007
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 16
Respuesta: Como redirecciono despues de Submit?

Ok gracias por la informacion. Osea que no puede haber nada de HTML, echo o print antes del header..

Con respecto a mi codigo lo he mejorado, pero consulte con mi libro y en los condicionales usa = (asignacion) y yo lo tenia asi, no encuentro que esta mal con respecto a eso ya que ahora lo revise por 2da vez... Mi codigo ya muestra el mensaje de confirmacion sin ningun error, por otra razon todavia no me llegan los emails pero seguro es algo menor... Queria sacarme la duda de esos de los condicionales.. gracias por la ayuda y los links... aprendi algo nuevo
  #6 (permalink)  
Antiguo 28/09/2011, 22:36
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Mensaje Respuesta: Como redirecciono despues de Submit?

Amigo en la condicional if tienes un error

donde esta:
Código PHP:
Ver original
  1. if ((!empty($name)) && (!empty($lastname)) && (!empty($email)) && (!empty($to)) && (!empty($text)) && (eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]", $email)))
  2.    { $ok= true;}

Haz esto:
Código PHP:
Ver original
  1. if (!empty($name) && !empty($lastname) && !empty($email) && !empty($to) && !empty($text) && eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]", $email))
  2.    { $ok= true;}

Y coincido con lo que dice andresdzphp :


Esta función ha sido declarada OBSOLETA desde PHP 5.3.0. Su uso está totalmente desaconsejado.
__________________
Visita a Publiventa donde compras y vendes de todo
  #7 (permalink)  
Antiguo 29/09/2011, 14:44
 
Fecha de Ingreso: marzo-2007
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 16
Respuesta: Como redirecciono despues de Submit?

Gracias!! si hoy solucione eso y ya me funciona! estoy aprendiendo la sintaxis de PHP.

Etiquetas: bom, header, html, ready, utf-8
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 07:54.