Problema al enviar un formulario de contacto por email

Hola a todos, gracias por tomaros vuestro tiempo en ayudarme.

He realizado un formulario de contacto que se envíe a un email, lo he hecho siguiendo indicaciones de tutoriales, pues no conozco mucho php. El problema es que cuando lo subo al servidor, primero, en los campos a introducir aparece texto (por ej: <?=$nombre;?>), segundo, no aparecen las opciones de una lista para elegir una, y tercero, al pulsar enviar vuelve a la misma página sin enviarse el mail o a veces me dice que hay algún error como si no hubiese introducido el nombre o el email, cuando sí lo he introducido.

Les copio todo el código, para que puedan revisarlo y avisarme de cualquier error que puedan ver. Siento la larga extensión, pero es necesaria.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>contacto php</title>
</head>
<body>
<script type="text/javascript">

function validarForm(formulario) {

if(formulario.nombre.value.length==0) {

formulario.nombre.focus();

alert('No has escrito tu nombre');

return false; }

if(formulario.email1.value.length==0) {

formulario.email1.focus();

alert('No has escrito tu e-Mail');

return false; }

if(formulario.email1.value!=formulario.email2.value) {

formulario.email1.focus();

alert('Los e-Mails no coinciden');

return false; }

if(formulario.comentarios.value.length==0) {

formulario.comentarios.focus();

alert('No has escrito ninguna consulta');

return false; }

return true; }

</script>


<h1>Contacto</h1>
<?php
function recogeDato ($campo) {

return isset($_REQUEST[$campo]) ? $_REQUEST[$campo] : '';

}

$email1 = recogeDato('email1');

$email2 = recogeDato('email2');

$localidad = recogeDato('localidad');

$provincia = recogeDato('provincia');

$teléfono = recogeDato('teléfono');

$nombre = recogeDato('nombre');

$consulta = recogeDato('consulta');

$algunerror = FALSE;
$error_nombre = "";

$error_comentarios = "";

$error_email1 = "";

$error_email2 = "";


if (isset($_REQUEST['enviado'])){ if ($nombre=='') {

$algunerror = TRUE;

$error_nombre = '<span class="erróneo">Requerido</span>'; }

if ($consulta=='') {

$algunerror = TRUE;

$error_consulta = '<span class="erróneo">Requerido</span>'; }


if ($email1=='') {

$algunerror = TRUE;

$error_email1 = '<span class="erróneo">Requerido</span>'; }

elseif ($email1!=email2) {

$algunerror = TRUE; $error_email2 = '<span class="erróneo">No coinciden</span>'; } }


if (isset($_REQUEST['enviado'])&&!$algunerror){

$para ="[email protected]";

$asunto ="Contacto web";

$mensaje = "Datos del formulario de contacto:\n";

"Nombre: ".$nombre."\n"; "eMail: ".$eMail."\n";

"Pregunta: ".$consulta."\n";

mail($para, $asunto, $mensaje);

echo "<p>Tu mensaje se ha enviado correctamente. Gracias por contactar con nosotros.</p>";

echo "<p>Nos pondremos en contacto lo antes posible.</p>\n"; }

else { if (isset($_REQUEST['enviado'])){

echo '<p>Por favor, corrige los siguientes errores:</p>'; }

else { echo '<p>Para ponerte en contacto con la Cofradía, rellena el siguiente formulario:</p>'; } ?>


<form method="post" action="contacto.php" onsubmit="return validarForm(this);">

<table id="contacto" width="100%" cellpadding="8" rules="rows" style="text-align:left; width=100%;">

<tbody>

<tr>

<td width="30%">Nombre:</td> <td width="70%"><input type="text" name="nombre" id="nombre" size="50" class="texto_form" value="<?=$nombre;?>" /><?=$error_nombre;?></td>

</tr>

<tr>

<td>Correo electrónico:</td> <td><input type="text" name="email1" id="email1" size="50" class="texto_form" value="<?=$email1;?>" /><?=$error_email1;?></td>

</tr>

<tr>

<td>Repite tu correo:</td> <td><input type="text" name="email2" id="email2" size="50" class="texto_form" value="<?=$email2;?>" /><?=$error_email2;?></td>

</tr>

<tr>

<td>Localidad:</td> <td><input type="text" name="localidad" id="localidad" size="30" class="texto_form" /></td>

</tr>

<tr>

<td>Provincia:</td> <td><select name="provincia" size="30" id="provincia" class="texto_form">

<option<?=($provincia=="")?' selected="seleted"':'';?>>Selec. Provincia</option><option<?=($provincia=="Álava")?' selected="seleted"':'';?>>Álava</option> <option<?=($provincia=="Albacete")?' selected="seleted"':'';?>>Albacete</option> <option<?=($provincia=="Alicante")?' selected="seleted"':'';?>>Alicante</option> </select></td>

</tr>

<tr>

<td>Teléfono:</td> <td><input type="text" name="teléfono" id="teléfono" size="30" class="texto_form" /></td>

</tr>

<td colspan="2">Comentarios:<br/><br/> <p class="centrado"><textarea cols="60" rows="8" name="comentarios" ><?=$comentarios?></textarea><?=$error_comentarios?></p><br/></td>

</tr>

<tr>...

Añade tu respuesta

Haz clic para o