He estado buscando información por el foro, pero tras probar varios ejemplos, no termino de encontrar solución a mi problema.
Tengo un formulario en html, que mediante acción POST enviará los datos a un php, que los recuperará y enviará un correo al usuario "webmaster".
No consigo recuperar e imprimir dichos valores en el body del correo que se recibe.
Podriais mirarlo y ver donde esta el problema .....
Gracias de antemano...
Resumo el html ...
Código HTML:
<form id="form1" name="form1" METHOD="post" ACTION="respcontac.php"> <input name="nombre" type="text" id="nombre" size="53" /> <input name="direccion" type="text" id="direccion" size="53" /> <input name="telefono" type="text" id="telefono" size="53" /></td> <textarea name="consulta" cols="40" rows="5" id="consulta"></textarea> <a href="respcontac.php" target="_self" class="ParrafoTituloBoton" >Enviar</a> </form>
El codigo php....
Código PHP:
<?
if (!isset($_server["PHP_SELF"]))
{
$_GET = $HTTP_GET_VARS;
$_POST = $HTTP_POST_VARS;
$_SESSION = $HTTP_SESSION_VARS;
}
// primero hay que incluir la clase phpmailer para poder instanciar
//un objeto de la misma
$nombre=$_POST['nombre'];
$telefono=$_POST['telefono'];
$direccion=$_POST['direccion'];
$asunto=$_POST['consulta'];
require "includes/class.phpmailer.php";
//instanciamos un objeto de la clase phpmailer al que llamamos
//por ejemplo mail
$mail = new phpmailer();
//Definimos las propiedades y llamamos a los métodos
//correspondientes del objeto mail
//Con PluginDir le indicamos a la clase phpmailer donde se
//encuentra la clase smtp que como he comentado al principio de
//este ejemplo va a estar en el subdirectorio includes
$mail->PluginDir = "includes/";
//Con la propiedad Mailer le indicamos que vamos a usar un
//servidor smtp
$mail->Mailer = "smtp";
//Asignamos a Host el nombre de nuestro servidor smtp
$mail->Host = "tuatenda.com";
//Le indicamos que el servidor smtp requiere autenticación
$mail->SMTPAuth = true;
//Le decimos cual es nuestro nombre de usuario y password
$mail->Username = "[email protected]";
$mail->Password = "beatriz";
//Indicamos cual es nuestra dirección de correo y el nombre que
//queremos que vea el usuario que lee nuestro correo
$mail->From = "[email protected]";
$mail->FromName = "Contacto en Tuatenda";
//el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar
//una cuenta gratuita, por tanto lo pongo a 30
$mail->Timeout=30;
//Indicamos cual es la dirección de destino del correo
$mail->AddAddress("[email protected]");
//$mail->AddAddress("[email protected]");
//Asignamos asunto y cuerpo del mensaje
//El cuerpo del mensaje lo ponemos en formato html, haciendo
//que se vea en negrita
$mail->Subject = "Envio de datos de contacto desde la web";
$mail->Body = "Interesado: " . $nombre . "<br>Telefono: " . $telefono . "<br>Direccion: " . $direccion . "<br>Asunto: <br>" . $asunto. "\n";
//Definimos AltBody por si el destinatario del correo no admite email con formato html
$mail->AltBody = "Interesado: " . $nombre . " - Telefono: " . $telefono . " - Direccion: " . $direccion . " - Asunto: " . $asunto. "\n";
//se envia el mensaje, si no ha habido problemas
//la variable $exito tendra el valor true
$exito = $mail->Send();
//Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas como mucho
//para intentar enviar el mensaje, cada intento se hara 5 segundos despues
//del anterior, para ello se usa la funcion sleep
$intentos=1;
while ((!$exito) && ($intentos < 5)) {
sleep(5);
//echo $mail->ErrorInfo;
$exito = $mail->Send();
$intentos=$intentos+1;
}
if(!$exito)
{
echo "Problemas enviando correo electrónico a ".$valor;
echo "<br>".$mail->ErrorInfo;
}
else
{
echo "<b>Mensaje enviado correctamente. <br>Gracias por el envío. <br> En breve nos pondremos en contacto con usted.</b>";
}
?>
Muchas gracias