formulario php
Publicado por Ana (1 intervención) el 04/05/2017 12:40:21
Hola,
He creado un formulario q he tenido que verificar, el correo llega pero no me devuelve todos los campos.
solo me devuelve el campo "comentario" $body =$_POST['comentario'];
Pero los campos nombre e email no me los devuelve
He incluido el código que me han proporcionado en hostalia.
Antes de incluir el código de verificación en otro servidor funcionaba perfectamente.
Te muestro el código completo por si me puedes ayudar:
Gracias
He creado un formulario q he tenido que verificar, el correo llega pero no me devuelve todos los campos.
solo me devuelve el campo "comentario" $body =$_POST['comentario'];
Pero los campos nombre e email no me los devuelve
1
2
$nombre=$_POST['nombre'];
$email=$_POST['email'];
He incluido el código que me han proporcionado en hostalia.
Antes de incluir el código de verificación en otro servidor funcionaba perfectamente.
Te muestro el código completo por si me puedes ayudar:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php
/*RECOGER EN VARIABLES LOCALES LOS DATOS QUE SE PASAN DESDE EL FORMULARIO*/
$nombre=$_POST['nombre'];
$email=$_POST['email'];
$mensaje=$_POST['comentario'];
$enviado=$_POST['enviado'];
$textolegal =$_POST['textolegal'];
$para = 'info@edualamo.com';
$asunto = 'Edualamo';
$mensaje = "
<b>Datos de la consulta</b><br><br>
<b>Nombre:</b> ".$nombre.";<br>
<b>E-Mail:</b> ".$email.";<br><br>
<b>Comentario:</b> ".$mensaje."<br><br>";
$mensaje .= "Enviado el " . date('d/m/Y H:i:s', time()) .". <br>IP: ".$_SERVER['REMOTE_ADDR']."";
/*METEMOS LA VARIABLE HEADER PARA QUE EL SERVIDOR DE EMAIL NOS RELLENE LOS CAMPOS*/
$header = 'From: '.$email . "\r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-type: text/html; charset=UTF-8";
if ( (mail($para, $asunto, $mensaje, $header, $nombre)) ){
header('Location: index.html');
}else{
header('Location: error.html');}
error_reporting( E_ALL & ~( E_NOTICE | E_STRICT | E_DEPRECATED ) ); //Aquí se genera un control de errores "NO BORRAR NI SUSTITUIR"
require_once "Mail.php"; //Aquí se llama a la función mail "NO BORRAR NI SUSTITUIR"
$to = 'info@edualamo.com'; //Aquí definimos quien recibirá el formulario
$from = 'info@edualamo.com'; //Aquí definimos que cuenta mandará el correo, generalmente perteneciente al mismo dominio
$host = 'smtp.edualamo.com'; //Aquí definimos cual es el servidor de correo saliente desde el que se enviaran los correos
$username = 'info@edualamo.com'; //Aqui se define el usuario de la cuenta de correo
$password = 'Hendaya2016!'; //Aquí se define la contraseña de la cuenta de correo que enviará el mensaje
$subject = 'correo del formulario2'; //Aquí se define el asunto del correo
$body =$_POST['comentario']; //Aquí se define el cuerpo de correo
$nombre=$_POST['nombre'];
$email=$_POST['email'];
//A partir de aquí empleamos la función mail para enviar el formulario
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body, $nombre, $email);
//Una vez aquí habremos enviado el mensaje mediante el formulario
//El siguiente codigo muestra en pantalla un mensaje indicando que el mensaje ha sido enviado y a que cuenta ES OPCIONAL desde Acens lo incluimos para verificar que el formulario de prueba esta funcionando
if (PEAR::isError($mail)) {
echo("
" . $mail->getMessage() . "
");
} else {
echo "Mensaje enviado desde POA a ". $to ;
}
?>
Gracias
Valora esta pregunta


0