bueno bueno, primero, los errores que te muestran, es por que en el array que tiene $_POST , no existen los elementos, nombre ,email, etc. puede que tu formulario HTML, este enviando los datos VIA GET y no POST, o que los datos, esten con otro nombre,
RECUERDA!!! php es sensible a MAYUSCULAS y minusculas,
el error "
NOTICE undefined index:
x " es por que como indica, que la variable $_POST no contiene ningun INDICE de nombre
x
ojo, tienes que poner atencion en los mensajes de ERROR, y dar prioridad a los errores que estan Primeros, y fijarte, la primera palabra que los sigue
en tu caso son del tipo NOTICE , como indica no es error grave y puede funcionar tu script, existen muchos tipos de Error, ten en cuenta, ello
ahora para futuras consultas, prueba primero, en googlear el mensaje de error.
tienes 2 caminos para solventar el ERROR
IGNORARLOS o Validarlos darles un valor Predeterminado si no existiese
primero el mas comun IGNORARLOS , el simbolo @ , indica que si hay error este no lo mostrara en pantalla , no es recomendable, por que luego podria no funcionar algo, y no sabrias que lo causa
Código PHP:
Ver original<?php
$nombre = @$_POST ["nombre"];
$email = @$_POST ["email"];
$telefono = @$_POST ["telefono"];
$asunto = @$_POST ["asunto"];
$thank="gracias.html";
$menssage = "
nombre:".$nombre."
email:".$email."
telefono:".$telefono."
asunto:".$asunto."";
//FIX error de escritura
$message = $menssage;
if (mail ($email , "formulario",$message)) Header ("location: $thank");
el siguiente es darles un valor que caso de no existir
Código PHP:
Ver original<?php
// SI EXISTE $_POST ["nombre"] ? ENTONCES EL VALOR SERA $_POST["nombre"] : DE LO CONTRARIO EL VALOR SERA 'anonimo'
$nombre = isset($_POST ["nombre"]) ?
$_POST ["nombre"] :'anonimo'; $email = isset($_POST ["email"]) ?
$_POST ["email"] :''; $telefono = isset($_POST ["telefono"]) ?
$_POST ["telefono"] :'0000000'; $asunto = isset($_POST ["asunto"]) ?
$_POST ["asunto"] :'sin asunto'; $thank="gracias.html";
$menssage = "
nombre:".$nombre."
email:".$email."
telefono:".$telefono."
asunto:".$asunto."";
//FIX error de escritura
$message = $menssage;
if (mail ($email , "formulario",$message)) Header ("location: $thank");
ahora ya luego sera creatividad tuya como organizarte y simplificar el codigo o validar la informacion