Código HTML :
<div class="container"> <form name="formulario" id="formulario" method="post" action="envio.php"> <div><label for="nombre">Nombre: </label> <input type="text" name="nombre" id="nombre" size="60"><span id="validar-nombre"></span></div> <div><label for="correo">Correo:</label> <input type="text" name="correo" id="correo" size="60"/><span id="validar-correo"></span></div> <div><label for="telefono">Telefono</label> <input type="text" name="telefono" id="telefono" size="60"/><span id="validar-telefono"></span></div> <div><label for="poblacion">Poblacion</label> <input type="text" name="poblacion" id="poblacion" size="60"/><span id="validar-poblacion"></span></div> <label>¿Cómo nos has conocido?:</label> <input name="conoce" type="radio" id="conoce" value="Internet" checked="checked" /> Internet <input type="radio" name="conoce" id="conoce" value="Ferias" /> Ferias <input type="radio" name="conoce" id="conoce" value="Amigos" /> Amigos <input type="radio" name="conoce" id="conoce" value="Cliente" /> Soy cliente <input type="radio" name="conoce" id="conoce" value="Publicidad" /> Publicidad <input type="radio" name="conoce" id="conoce" value="Otros" /> Otros <label for="mensaje">Mensaje: </label> <textarea name="mensaje" id="mensaje" rows="10" cols="56"></textarea><span id="validar-mensaje"></span> <p id="envio"><input type="submit" name="enviar" id="enviar" value="Enviar" /></p> <p id="borrar"><input type="reset" name="borrar" id="borrar" value="Borrar" /><p/> </form> </div>
El Javascript:
Código Javascript :
$(function(){
var valor;
var i = 0;
$('#nombre').focus(function(){
$('#resultado-nombre').remove();
$('#validar-nombre').append('<p class="advertencia">* Obligatorio</p>');
});
$('#nombre').blur(function(){
$('.advertencia').remove();
valor = $('#nombre').val();
if(valor != '') {
$('<img src="imagenes/accept.png" id="resultado-nombre" />').appendTo('#validar-nombre');
}
else {
$('<img src="imagenes/delete.png" id="resultado-nombre" />').appendTo('#validar-nombre');
}
});
$('#correo').focus(function(){
$('#resultado-correo').remove();
$('#validar-correo').append('<p class="advertencia">* Obligatorio</p>');
});
$('#correo').blur(function(){
$('.advertencia').remove();
valor = $('#correo').val();
if(valor != '') {
if(validaCorreo(valor)){
$('<img src="imagenes/accept.png" id="resultado-correo" />').appendTo('#validar-correo');
}
else {
$('<span id="resultado-correo">Correo no valido</span>').appendTo("#validar-correo");
}
}
else {
$('<img src="imagenes/delete.png" id="resultado-correo" />').appendTo('#validar-correo');
}
});
$('#telefono').focus(function(){
$('#validar-telefono').append('<p class="advertencia">* Opcional</p>');
});
$('#telefono').blur(function(){
$('.advertencia').remove();
});
$('#poblacion').focus(function(){
$('#validar-poblacion').append('<p class="advertencia">* Opcional</p>');
});
$('#poblacion').blur(function(){
$('.advertencia').remove();
});
$('#conoce').focus(function(){
$('#validar-conoce').append('<p class="advertencia">* Opcional</p>');
});
$('#conoce').blur(function(){
$('.advertencia').remove();
});
$('#mensaje').focus(function(){
$('#resultado-mensaje').remove();
$('#validar-mensaje').append('<p class="advertencia">* Obligatorio</p>');
});
$('#mensaje').blur(function(){
$('.advertencia').remove();
valor = $('#mensaje').val();
if(valor != '') {
$('<img src="imagenes/accept.png" id="resultado-mensaje" />').appendTo('#validar-mensaje');
}
else {
$('<img src="imagenes/delete.png" id="resultado-mensaje" />').appendTo('#validar-mensaje');
}
});
$('#enviar').click(function(){
if($('#nombre').val()!= '' && $('#correo').val()!='' && $('#mensaje').val()!='') {
$('.advertencia').remove();
$('#envio').append('<img src="imagenes/ajax-loader.gif" alt="Procesando envio" id="cargando" />');
var nombre = $('#nombre').val();
var correo = $('#correo').val();
var telefono = $('#telefono').val();
var poblacion = $('#poblacion').val();
var conoce = $('#conoce').val();
var mensaje = $('#mensaje').val();
$.ajax({
url: 'envio.php',
type: 'POST',
data: 'nombre=' + nombre + '&correo=' + correo + '&telefono=' + telefono + '&poblacion=' + poblacion + '&conoce=' + conoce +'&mensaje=' + mensaje,
success: function(resultado) {
$('#respuesta').remove();
$('#envio').append('<span id="respuesta">' + resultado + '</span>');
$('#cargando').fadeOut(500, function() {
$(this).remove();
});
}
});
return false;
}
else {
$('#envio').append('<span class="advertencia">Debe completar los datos requeridos.</span>');
return false;
}
});
});
function validaCorreo(correo) {
var expresion = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
return expresion.test(correo);
}Y el envío en PHP:
Código PHP :
<?php $nombre = $_POST['nombre']; $correo = $_POST['correo']; $telefono = $_POST['telefono']; $poblacion = $_POST['poblacion']; $conoce = $_POST['conoce']; $mensaje = $_POST['mensaje']; $destino = "[email protected]"; $asunto = "Consulta desde página web"; $cuerpo = "<strong>Nombre: </strong>".$nombre."<br /> <strong>Correo: </strong>".$correo."<br /> <strong>Telefono: </strong>".$telefono."<br /> <strong>Poblacion: </strong>".$poblacion."<br /> <strong>Conoce: </strong> ".$conoce."<br /> <strong>Mensaje: </strong>".$mensaje; $cabecera = "MIME-Version: 1.0\r\n"; $cabecera .= "Content-type:text/html; charset=iso-8859-1\r\n"; $cabecera .= "From: $correo\r\n"; $cabecera .= "Reply-to: $correo\r\n"; $cabecera .= "Cc: $correo\r\n"; if(mail($destino, $asunto, $cuerpo, $cabecera)) { echo 'Su mensaje ha sido enviado, en breve nos pondremos en contacto con Ud.'; } else { echo 'No se pudo enviar el mensaje. Inténtelo de nuevo'; } ?>
El formulario funciona perfectamente, valida los datos y me llegan bien, salvo los de la parte del html que pongo a continuación (el usuario tiene que elegir entre las opciones que lo doy) y siempre me llega como respuesta la primera opción, supongo que algo estoy haciendo mal ¿alguien me ayuda? Muchas gracias.
Código HTML :
<label>¿Cómo nos has conocido?:</label> <input name="conoce" type="radio" id="conoce" value="Internet" checked="checked" /> Internet <input type="radio" name="conoce" id="conoce" value="Ferias" /> Ferias <input type="radio" name="conoce" id="conoce" value="Amigos" /> Amigos <input type="radio" name="conoce" id="conoce" value="Cliente" /> Soy cliente <input type="radio" name="conoce" id="conoce" value="Publicidad" /> Publicidad <input type="radio" name="conoce" id="conoce" value="Otros" /> Otros
