Comunidad de diseño web y desarrollo en internet online

Formulario en php

Citar            
MensajeEscrito el 03 Ago 2010 03:06 pm
buenos días, tengo un formulario en php que luego de enviarlo lleva a una página en blanco y dice: enviado correctamente.
Yo quisiera que en vez de que se muestre la página en blanco, el texto se muestre en la misma página donde está el formulario, o en su defecto tener la opción de poner la url de una página que aparezca el mensaje, pero tenga el fondo del resto del sitio.
Alguien me puede dar una mano con esto?
Aquí dejo el código del php

Código PHP :

<title></title><?php

$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Este mensaje fue enviado por " . $nombre . ", asunto: " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());

$para = '[email protected]';
$asunto = 'Contacto';

mail($para, $asunto, utf8_decode($mensaje), $header);

echo "Mensaje enviado correctamente";                          en esta parte quisiera poner la url a donde quiero que se redireccione pero no se como                 

?>

Por onpress

68 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 03 Ago 2010 03:40 pm
Con la función header de PHP (http://php.net/manual/es/function.header.php)

Por Toth

9 de clabLevel



Genero:Masculino  

msie8
Citar            
MensajeEscrito el 03 Ago 2010 03:58 pm
en ves de enviar el formulario a otra página envíalo a esa misma.

Y arriba de todo pon un

Código Javascript :

if ($_POST['nombre']) {
  //aqui el proceso que harás...

$enviado = 'su formulario ha sido enviado';'
}


y haces un echo $enviado. Asi cuando se envie se verá el mensaje y sino no.

Por nax_hh

Claber

168 de clabLevel

1 tutorial

 

Reus

firefox
Citar            
MensajeEscrito el 03 Ago 2010 04:17 pm
gracias por la respuesta, pegué el código y luego de enviar me aparece la página en blanco :cry:
Que debo poner donde dices " aquí el proceso que harás"

Por onpress

68 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 03 Ago 2010 07:31 pm
si ahi recibes los datos
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];


donde esta donde lo imprimes no lo veo?? osea en la otra web que desea que vaya
ok lo puedes hacer con header(location:);

en la web donde de redirecionará...
debes imprimir esos valores si tu funcion mail() //si esta bien se cumplira tu sentencias...
puedes imprimirlo con la funcion echo o print y si te tira un error o algo implemente con la Sentencia Get a ver si te lo pasa
los datos y esas cosas.....

debes de imprimirlos.....BYe

Por Acter-Making

21 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Ago 2010 08:59 pm
quizás debo aclarar que no se php, no entiendo mucho las indicaciones que dan, de imprimir, location, etc.
El formulario funciona, los datos que se envían llegan al correo, solamente quiero saber que debo añadir al código para que el mensaje su correo ha sido enviado, aparezca en la misma página y no en una en blanco.

Por onpress

68 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 04 Ago 2010 02:37 am
mira en este codigo debes de hacer lo siguiente....

<title></title><?php

$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Este mensaje fue enviado por " . $nombre . ", asunto: " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());

$para = '[email protected]';
$asunto = 'Contacto';

mail($para, $asunto, utf8_decode($mensaje), $header);

header(location:tupagina.php) //pones aqui la web donde redirecionará
entonces ala web que pondras alla por ejemplo le llamarias recibe.php entonces le pones esto

$advertencia="su mensaje ha sido enviado";
if(isset($_POST['nombre'])) || isset ($_POST ['email'])){
echo $advertencia;
}
else {
echo "debe de rellenar sus campos";
header(location: puedes poner tu web aqui donde esta el form del action.)
}
?>

ahi le estoy preguntando en el if que si han escrito algo en los campos entonces que imprima con la funcion "echo" la variable advertencia entiendes y esa variable contiene su mensaje a sido enviado pero si de lo contrario no tiene nada pues entonces
le puse debe de rellenar sus campos... y regresa a la web de rellenar... espero que entiendas si hay problema pues me avisas...

bye....!!!!

Por Acter-Making

21 de clabLevel



 

chrome
Citar            
MensajeEscrito el 04 Ago 2010 02:39 am

Acter-Making escribió:

mira en este codigo debes de hacer lo siguiente....

<title></title><?php

$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Este mensaje fue enviado por " . $nombre . ", asunto: " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());

$para = '[email protected]';
$asunto = 'Contacto';

mail($para, $asunto, utf8_decode($mensaje), $header);

header(location:tupagina.php) //pones aqui la web donde redirecionará
entonces ala web que pondras alla por ejemplo le llamarias recibe.php entonces le pones esto

$advertencia="su mensaje ha sido enviado";
if(isset($_POST['nombre'])) || isset ($_POST ['email'])){
echo $advertencia;
}
else {
echo "debe de rellenar sus campos";
header(location: puedes poner tu web aqui donde esta el form del action.)
}
?>

ahi le estoy preguntando en el if que si han escrito algo en los campos entonces que imprima con la funcion "echo" la variable advertencia entiendes y esa variable contiene su mensaje a sido enviado pero si de lo contrario no tiene nada pues entonces
le puse debe de rellenar sus campos... y regresa a la web de rellenar... espero que entiendas si hay problema pues me avisas...

bye....!!!!


HACIENDOTE RESUMEN DE TODO LO QUE DEBES DE HACER ES COMENZAR APRENDER PHP DE UNA FORMA MAS FRECUENTE PARA TI TE LO ACONSEJO..

Por Acter-Making

21 de clabLevel



 

chrome

 

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