Hola compañeros, tengo este problema y ya nose que mas probar para solucionarlo, a ver si me podeis ayudar.
index.php
Código:
<script type="text/javascript">
function EnviarEmail(obj)
{
alert("Hola");
if (obj.nombre.value == ""){
alert("Debes introducir un nombre");
obj.nombre.focus();
return;
}
if (obj.email.value == ""){
alert("Debes introducir un e-mail válido");
obj.email.focus();
return;
}
CargarDatosContacto(obj.nombre.value, obj.email.value, obj.comentario.value);
alert("E-mail enviado con éxito");
}
function CargarDatosContacto(nombre, email, comentario)
{
// Obtengo la capa donde se muestran las respuestas del servidor
var capa = document.getElementById("content-wrapper");
// Creo el objeto AJAX
var ajax = NuevoAjax();
// Coloco el mensaje "Cargando..." en la capa
capa.innerHTML = "Cargando contenido...";
// Abro la conexión, envío cabeceras correspondientes al uso de POST y envío los datos con el método send del objeto AJAX
ajax.open("POST", "datos.php", true);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.send("tipo=Contacto&nombre=" + nombre + "&email=" + email + "&comentario=" + comentario);
ajax.onreadystatechange=function()
{
if (ajax.readyState == 4)
{
// Respuesta recibida. Coloco el texto plano en la capa correspondiente
capa.innerHTML = ajax.responseText;
}
}
}
<scrip/>
contenido.php
Código PHP:
<form action="javascript:EnviarEmail(document.forms.formcontacto)" method="post" name="formcontacto">
<tr><td width="70" height="10">Nombre (*):</td><td><input type="text" size="34" maxlength="40" name="nombre"></td></tr>
<tr><td height="10">E-mail (*):</td><td><input type="text" size="34" maxlength="40" name="email"></td></tr>
<tr><td height="10">Mensaje:</td><td><textarea cols="31" rows="2" name="comentario"></textarea></td></tr>
<tr><td height="10"></td><td><input type="submit" value="Enviar"></td></tr>
<tr><td colspan="2">* Campos obligatorios</td></tr>
</form>
<?php
if (!$HTTP_POST_VARS){
echo "error";
}else{
//Recibiendo formulario, componiendo cuerpo...
$cuerpo = "Formulario de contacto\n\n";
$cuerpo .= "Nombre: " . $_POST["nombre"] . "\n";
$cuerpo .= "Email: " . $_POST["email"] . "\n";
$cuerpo .= "Comentario: " . $_POST["comentario"] . "\n";
//Se manda el correo
mail("[email protected]","Formulario Contacto Web", $cuerpo, 'From: Contacto Web' . "\r\n" . 'Reply-To: ' . $_POST["email"]);
}
?>
En la direccion mail tengo otra, claro.
Muchas gracias por adelantado!