Comunidad de diseño web y desarrollo en internet online

duda como redireccionar cuando manda un mail con exito php

Citar            
MensajeEscrito el 16 Mar 2009 12:51 am
aqui molestando de nuevo
lo que pasa es que hice un formulario donde anotas tus datos y al darle enviar pues muestra la pagina php donde estan los datos enviados y al mismo tiempo los envia, pero lo que yo quiero es que no me muestre la pagina de php donde se vea lo que estoy enviando si no me redireccione si el mensaje se envio correctamente a la pagina que quiero y no que nada mas me los muestre con un

Código PHP :

echo "$body";

ya lo intente con

Código PHP :

header ("location: mensaje-enviado.php");
y me sale este error

Warning: Cannot modify header information - headers already sent by (output started at /home/chicharrin/domains/chicharrines.net/public_html/contacta.php:1) in /home/chicharrin/domains/chicharrines.net/public_html/contacta.php on line 84

como le puedo hacer haber si me pueden ayudar aqui esta el codigo que utilizo

Código PHP :

<title>----&gt;Chicharrines.net&lt;----</title><?php 


$nombre = $HTTP_POST_VARS['nombre']; 
$mensaje = $HTTP_POST_VARS['mensaje']; 
$telefono = $HTTP_POST_VARS['telefono']; 
$email = $HTTP_POST_VARS['email']; 
$direccion = $HTTP_POST_VARS['direccion']; 




$message = eregi_replace('fuck', "flip", $message); 
$message = eregi_replace('shit', "crap", $message); 
$message = eregi_replace('bitch', "nice lady", $message); 
$message = eregi_replace('ass', "butt", $message); 
$message = eregi_replace('piss', "pee", $message); 

$name = stripslashes($name); 
$email = stripslashes($email); 
$message = stripslashes($message); 
$telefono = stripslashes($telefono); 

$mail_to = "[email protected]";  

$body = "<html><head></head><body bgcolor=#ccffff>"; 
$body .= "<font face=\"Verdana\" size=\"2\">"; 
$body .= "<i>gracias por enviar tus datos... En breve nos comunicamos contigo... <a href=\"\">Chicharrines</a></i><br>"; 
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>"; 

$body .= "<b>Nombre:</b>  $nombre<br>"; 
$body .= "<b>Direccion:</b>  $direccion<br>"; 
$body .= "<b>Telefono:</b>  $telefono<br>"; 
$body .= "<b>E-Mail:</b>  <a href=\"mailto:$email\">$email</a><br>"; 
$body .= "<b>Mensaje:</b>  $mensaje<br>"; 



$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>"; 
$body .= "<br><br>"; 
$body .= "<i>Información Adicional</i><br>"; 
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>"; 
$body .= "<b>IP Address:</b> $REMOTE_ADDR<br>"; 
$HostName = gethostbyaddr($_SERVER['REMOTE_ADDR']); 
$body .= "<b>Host:</b> $HostName<br>"; 
$body .= "<b>User Agent:</b> $HTTP_USER_AGENT<br>"; 
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>"; 
$body .= "<font size=\"1\">para mas informacion:<a href=\"http://www.chicharrines.net/\">Chicharrines.net</a></font>"; 
$body .= "<br><div align=\"center\"><img src=\"http://www.chicharrines.net/imagenes/armar_legos.gif\"></div>"; 
$body .= "<br><div align=\"center\"><p><b>Gracias...</b></p></div>"; 
$body .= "</font></body></html>"; 


$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
$headers .= "From: ".$name." <".$email.">"; 


mail($mail_to,$subject,$body,$headers); 

echo "$body"; 
?> 

Por cher1_7

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 16 Mar 2009 06:55 am
Hola, ningun caracter puede precer a un header, de lo contrario estos ya no son tomados como header, borra la parte del tillte y todo eso, la etiqueta php debe estar al incio del documento, no entre tags.

Código PHP :

<?php  
 
$nombre = $HTTP_POST_VARS['nombre'];  
$mensaje = $HTTP_POST_VARS['mensaje'];  
$telefono = $HTTP_POST_VARS['telefono'];  
$email = $HTTP_POST_VARS['email'];  
$direccion = $HTTP_POST_VARS['direccion'];  
 
 
 
 
$message = eregi_replace('fuck', "flip", $message);  
$message = eregi_replace('shit', "crap", $message);  
$message = eregi_replace('bitch', "nice lady", $message);  
$message = eregi_replace('ass', "butt", $message);  
$message = eregi_replace('piss', "pee", $message);  
 
$name = stripslashes($name);  
$email = stripslashes($email);  
$message = stripslashes($message);  
$telefono = stripslashes($telefono);  
 
$mail_to = "[email protected]";   
 
$body = "<html><head></head><body bgcolor=#ccffff>";  
$body .= "<font face=\"Verdana\" size=\"2\">";  
$body .= "<i>gracias por enviar tus datos... En breve nos comunicamos contigo... <a href=\"\">Chicharrines</a></i><br>";  
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>";  
 
$body .= "<b>Nombre:</b>  $nombre<br>";  
$body .= "<b>Direccion:</b>  $direccion<br>";  
$body .= "<b>Telefono:</b>  $telefono<br>";  
$body .= "<b>E-Mail:</b>  <a href=\"mailto:$email\">$email</a><br>";  
$body .= "<b>Mensaje:</b>  $mensaje<br>";  
 
 
 
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>";  
$body .= "<br><br>";  
$body .= "<i>Información Adicional</i><br>";  
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>";  
$body .= "<b>IP Address:</b> $REMOTE_ADDR<br>";  
$HostName = gethostbyaddr($_SERVER['REMOTE_ADDR']);  
$body .= "<b>Host:</b> $HostName<br>";  
$body .= "<b>User Agent:</b> $HTTP_USER_AGENT<br>";  
$body .= "<hr width=\"100%\" size=\"1\" color=\"#333333\"><br>";  
$body .= "<font size=\"1\">para mas informacion:<a href=\"http://www.chicharrines.net/\">Chicharrines.net</a></font>";  
$body .= "<br><div align=\"center\"><img src=\"http://www.chicharrines.net/imagenes/armar_legos.gif\"></div>";  
$body .= "<br><div align=\"center\"><p><b>Gracias...</b></p></div>";  
$body .= "</font></body></html>";  
 
 
$headers = "MIME-Version: 1.0\r\n";  
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";  
$headers .= "From: ".$name." <".$email.">";  
 
 
if( mail($mail_to,$subject,$body,$headers) )
{
    //Mensaje enviado, redireccionamos a la web correcta
    header ("Location: mensaje-enviado.php");
}
else
{
   //El mensaje no se pudo enviar, redireccionamos a una web, o podemos desplegar un mensaje
   header ("Location: mensaje-no-enviado.php");
   echo "No se pudo enviar el mail";
}
?>

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 16 Mar 2009 09:01 pm
X_x°

Usa PHPMailer !! mail de php no es la mejor opcion!

ademas luego de hqacer el send te retorna true o false segun si envio o no el correo

y notenes que perder tiempo con las cabeceras ni cosas de esas que puede que dejen un bache de seguridad en tu aplicacion!!

Usa PHPMailer !!

Por jpcw

Claber

1715 de clabLevel

1 tutorial

Genero:Masculino  

AlgoritmicBrainDesigner

firefox
Citar            
MensajeEscrito el 16 Mar 2009 09:05 pm
@LongeVie: la cuestion no es regar codigo por todo lado y subir de clavlevel!, se nota que conoces mucho del tema!, por eso promueve las buenas practicas

Por jpcw

Claber

1715 de clabLevel

1 tutorial

Genero:Masculino  

AlgoritmicBrainDesigner

firefox
Citar            
MensajeEscrito el 16 Mar 2009 09:33 pm

jpcw escribió:

@LongeVie: la cuestion no es regar codigo por todo lado y subir de clavlevel!, se nota que conoces mucho del tema!, por eso promueve las buenas practicas


Promuevo las buenas practicas en la medida que puedo, regar codigo es parte de la ayuda, en la mayoria de los casos corigo los errores, ejemplifico con codigo bien estructurado e intento resolver el problema inmediato dependiendo del nivel del que pregunta, en muchos casos el que pregunta es un noob y aunque le ofrezca las joyas de la corona, no tiene ni idea de una cosa menos de la otra, y como no me quiero liar mucho, cosa que he aprendido a la larga de esto de brindar ayuda gratuita y desinteresada, porque almenos mi ayuda asi es, no me interesa el clablevel como un incentivo o una insignia de mi conocimiento, al final los estadisticos sirven para nada, per bien puedo mencionarte entre 15 y 25 usarios de cristalab a los que tambien les ayudo por messenger de forma gratuita y desinteresada, simplemente me contactaron y solicitaron ayuda, para mi es mas que suficiente para brindarles mi apoyo, aveces me paso horas ayudandolos y nada de eso se refleja en el clablevel; jpcw, me encantaria dar respuestas cortas como solisarg que en una linea coloca una solucion completa o un link donde esta la solucion, en mi caso yo soy mas de fierros y me gusta el reto de crear codigo. no se porque tienes una idea tan erronea de mi.

Saludos jpcw.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 16 Mar 2009 09:42 pm
la verdad si estoy de acuerdo contigo aunque si es verdad que tanto codigo se ve un poquito mal pero es la unica forma en la que los novatos en programacion como yo aprenden sin problemas y asi miran sus errores de otra manera no creo que sea tan facil al menos para mi y muchas gracias a los dos ya que me han ayudado no nada mas en este tema si no en muchos mas...
me alegra que haiga programadores que como ustedes ayudan desinteresadamente a personas que vamos entrando en el camino gracias de cualquier forma...

Por cher1_7

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 16 Mar 2009 10:11 pm
U_U si tienes razón, tanto codigo se ve medio mal, procurare dar mejores respuestas con menos codigo y asi aportar mas a la comunidad y menos a mi ego.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 17 Mar 2009 12:44 am
@LongeVie: sos bueno y tenes muchas librerias, pero en mi humilde opinion la funcion mail() de php es una patraña e intentar configurar los headers puede resultar desastroso hasta para el mismo servidor, por eso soy el que mas promueve PHPMailer. ya que te podes colgar de un servidor de correo establecido o si queres de tu propio gmail!

Por jpcw

Claber

1715 de clabLevel

1 tutorial

Genero:Masculino  

AlgoritmicBrainDesigner

firefox
Citar            
MensajeEscrito el 17 Mar 2009 12:54 am
ya que andamos aqui me podrias ayudar o poner algun ejemplo?
te explico

lo que pasa es que hice un formulario donde agrego a alumnos de una guarderia, el formulario si los guarda bien en la bd, pero el problema es que cuando la maestra esta registrando a un nuevo nino en la bd a veces se equivoca en algun dato y tiene que borrar los datos del alumno y volver a empezar y eso es un poco molesto
como le puedo hacer para que pueda modificar los datos sin tener que eliminarlo y empezar de 0 quiero que cuando se halla guardado en la bd pueda modificar dichos datos me podrian poner algun ejemplo
gracias...

Por cher1_7

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 17 Mar 2009 02:45 am
phpmailer buena solucion y el error te sale porq estas mandando un echo y no puedes mandar un echo y una cabezera porq estalla

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 17 Mar 2009 04:33 am
procura dividir tu aplicacion en varios archivos, no tengas pereza que despues te era muy util ;)

en una parte el form...
en otra parte tomas los datos y los cargas y/o envias, luego de eso redirecionas a la pagina de form (podria ser) conun mensaje indicando el estado de la transaccion ;) con eso evitar tener errores como el del echo que te nombra talcual

Por jpcw

Claber

1715 de clabLevel

1 tutorial

Genero:Masculino  

AlgoritmicBrainDesigner

firefox
Citar            
MensajeEscrito el 19 Mar 2009 01:05 am
jpcw tiene mucha razon te servira para depurar,modificar y muchas cosas mas con ese codigo saludos

Por talcual

686 de clabLevel



 

Colombia

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.