29/03/2010, 19:07
|
| | Fecha de Ingreso: diciembre-2008
Mensajes: 738
Antigüedad: 15 años, 11 meses Puntos: 15 | |
Problema al mandar mail con Ajax. Tengo un problema y es que hay un error con el Ajax que estoy utilizando, segun yo está todo bien pero no se que pueda ser. Ojalá me puedan ayudar.
CONTACTO. PHP
Código:
<?php include 'header.php' ?>
<div id="bajocabezal"></div>
<div id="base">
<div id="baseizq">
<h1>Contáctanos</h1>
<div id="separador"></div>
<h2>Ventas</h2>
<p><i>*Los campos marcados con asterisco son obligatorios</i></p>
<div id="response"></div>
<form name="contacto" method="post" action="" >
<table width="100%" border="0" align="left">
<tr>
<td width="40%"><p>Nombre*</p></td>
<td width="60%" colspan="1"><input name="nombre" type="text" value="" size="40" class="inputcolor" /></td>
</tr>
<tr>
<td width="40%"><p>Empresa</p></td>
<td width="60%" colspan="1"><input name="empresa" type="text" value="" size="40" class="inputcolor" /></td>
</tr>
<tr>
<td width="40%"><p>Teléfono</p></td>
<td width="60%" colspan="1"><input name="telefono" type="text" value="Incluir Lada" size="40" class="inputcolor" /></td>
</tr>
<tr>
<td width="40%"><p>Correo Electrónico*</p></td>
<td width="60%" colspan="1"><input name="email" type="text" value="" size="40" class="inputcolor" /></td>
</tr>
<tr>
<td width="40%"><p>Ciudad*</p></td>
<td width="60%" colspan="1"><input name="ciudad" type="text" value="" size="40" class="inputcolor" /></td>
</tr>
<tr>
<td width="40%"><p>Estado*</p></td>
<td width="60%" colspan="1"><select name="estado" id="estado"/>
<option value="Aguascalientes">Aguascalientes
<option value="Baja California Norte">Baja California Norte
<option value="Baja California Sur">Baja California Sur
<option value="Campeche">Campeche
<option value="Chiapas">Chiapas
<option value="Chihuahua">Chihuahua
<option value="Coahuila">Coahuila
<option value="Colima">Colima
<option value="Distrito Federal">Distrito Federal
<option value="Durango">Durango
<option value="Guanajuato">Guanajuato
<option value="Guerrero">Guerrero
<option value="Hidalgo">Hidalgo
<option value="Jalisco" selected="selected">Jalisco
<option value="Estado de México">Estado de México
<option value="Michoacan">Michoacan
<option value="Morelos">Morelos
<option value="Nayarit">Nayarit
<option value="Nuevo Leon">Nuevo Leon
<option value="Oaxaca">Oaxaca
<option value="Puebla">Puebla
<option value="Querétaro">Querétaro
<option value="Quintana Roo">Quintana Roo
<option value="San Luis Potosí">San Luis Potosí
<option value="Sinaloa">Sinaloa
<option value="Sonora">Sonora
<option value="Tabasco">Tabasco
<option value="Tamaulipas">Tamaulipas
<option value="Tlaxcala">Tlaxcala
<option value="Veracruz">Veracruz
<option value="Yucatán">Yucatán
<option value="Zacatecas">Zacatecas
</select></td>
</tr>
<tr>
<td width="40%"><p>Area a la que se desea contactar*</p></td>
<td width="60%" colspan="1"><select name="area" id="area"/>
<option value="Ventas">Ventas
<option value="Compras">Compras
<option value="Dirección">Dirección
<option value="Franquicias">Franquicias
<option value="Contacto">Contacto
</select></td>
</tr>
<tr>
<td width="14%"><p>Comentarios*</p></td>
<td colspan="2"><textarea name="comentarios" rows="5" cols="40" class="inputcolor3" style="font-family: Arial, Verdana, sans-serif; font-size:14px;">...Tus comentarios aquí...</textarea>
</td>
</tr>
<tr>
<td height="71" colspan="3"><br /><input type="image" image src="Imagenes/boton.png" name="enviar" value= "enviar" id= "enviar" class="inputcolor2" />
</td>
</tr>
</table>
</form>
</div><!--baseizq-->
</div><!--base-->
<?php include 'footer.php' ?>
AJAX.JS
Código:
$(document).ready(function(){
$("#enviar").click(function(){
var valid = '';
var isr = ' Requerido.';
var nombre = $("#name").val();
var empresa = $("#empresa").val();
var telefono = $("#subject").val();
var email = $("#email").val();
var ciudad = $("#ciudad").val();
var estado = $("#estado").val();
var comentarios = $("#comentarios").val();
if (nombre.length<1) {
valid += '<br />Un nombre válido'+isr;
}
if (!email.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$)/i)) {
valid += '<br />Un e-mail válido'+isr;
}
if (telefono.length<1) {
valid += '<br />Teléfono válido'+isr;
}
if (ciudad.length<1) {
valid += '<br />Nombre de ciudad'+isr;
}
if (text.length<1) {
valid += '<br />Campo de texto'+isr;
}
if (valid!='') {
$("#response").fadeIn("slow");
$("#response").html("Error:"+valid);
}
else {
var datastr ='nombre=' + nombre + '&empresa=' + empresa + '&telefono=' + telefono + '&email=' + email + '&ciudad=' + ciudad + '&estado=' + estado + '&comentarios=' + comentarios;
$("#response").css("display", "block");
$("#response").html("Enviando Mensaje ");
$("#response").fadeIn("slow");
setTimeout("send('"+datastr+"')",2000);
}
return false;
});
});
function send(datastr){
$.ajax({
type: "POST",
url: "enviar.php",
data: datastr,
cache: false,
success: function(html){
$("#response").fadeIn("slow");
$("#response").html(html);
setTimeout('$("#response").fadeOut("slow")',2000);
}
});
}
ENVIAR.PHP
Código:
<?php
$nombre=$_POST['nombre'];
$empresa=$_POST['empresa'];
$telefono=$_POST['telefono'];
$email=$_POST['email'];
$ciudad=$_POST['ciudad'];
$estado=$_POST['estado'];
$comentarios=$_POST['comentarios'];
$texto="Nombre: $nombre<br>";
$texto.="Empresa: $empresa<br>";
$texto.="Teléfono: $telefono<br>";
$texto.="Email: $email<br>";
$texto.="Ciudad: $ciudad<br>";
$texto.="Estado: $estado<br>";
$texto.="Comentarios: $comentarios";
$email="[email protected]";
$asunto="mensaje de un cliente";
$cabeceras = "Content-type: text/html; charset=utf-8";
mail($email,$asunto,$texto,$cabeceras);
echo "<h1>Tu mensaje ha sido enviado</h1>";
echo "<p>Hemos recibido tu mensaje, en breve te responderemos</p>";
echo "<p>$texto</p>";
echo" <a href=\"javascript: window.history. go( -1 )\"><image src='Imagenes/botonregresar.png' border='0'></a><br>";
?>
Última edición por alvarols; 30/03/2010 a las 14:01 |