hola...he abierto de nuevo el tema porque creo que me he explicado antes mal (ya estoy muy confusa)...
Veamos, tengo una página con un menú lateral que no se mueve, y una capa contenedor donde cargo las páginas.
Cargo las páginas con el código:
$(document).ready(function(){
$("#nav li").each(function(event){
$(this).on('click','ul a',function(event){
event.preventDefault();
var href = $(this).attr("href");
$("#centro").load(href);
return false;
});
});
});
este me carga las páginas aparentemente bien... ya que otras páginas con jquery en ellas funcionan de maravilla.
Cuando intento cargar una página php de inscripción, es cuando surgen los problemas. El código es:
<html>
<head>
<title>Contacto</title>
<link rel='stylesheet' href='estilos22.css'>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js'></script>
<script src='funciones22.js'></script>
</head>
<body>
<?php
if(isset($_POST['boton'])){
if($_POST['nombre'] == ''){
$error1 = '<span class="error">Ingrese su nombre</span>';
}else if($_POST['email'] == '' or !preg_match("/^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/",$_POST['email'])){
$error2 = '<span class="error">Ingrese un email correcto</span>';
}else if($_POST['asunto'] == ''){
$error3 = '<span class="error">Ingrese un asunto</span>';
}else if($_POST['mensaje'] == ''){
$error4 = '<span class="error">Ingrese un mensaje</span>';
}else{
$dest = "tu@email.com"; //Email de destino
$nombre = $_POST['nombre'];
$email = $_POST['email'];
$asunto = $_POST['asunto']; //Asunto
$cuerpo = $_POST['mensaje']; //Cuerpo del mensaje
//Cabeceras del correo
$headers = "From: $nombre $email\r\n"; //Quien envia?
$headers .= "X-Mailer: PHP5\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
if(mail($dest,$asunto,$cuerpo,$headers)){
$result = '<div class="result_ok">Email enviado correctamente </div>';
// si el envio fue exitoso reseteamos lo que el usuario escribio:
$_POST['nombre'] = '';
$_POST['email'] = '';
$_POST['asunto'] = '';
$_POST['mensaje'] = '';
}else{
$result = '<div class="result_fail">Hubo un error al enviar el mensaje </div>';
}
}
}
?>
<form class='contacto' method='POST' action=''>
<div><label>Tu Nombre:</label><input type='text' class='nombre' name='nombre' value='<?php echo $_POST['nombre']; ?>'><?php echo $error1 ?></div>
<div><label>Tu Email:</label><input type='text' class='email' name='email' value='<?php echo $_POST['email']; ?>'><?php echo $error2 ?></div>
<div><label>Asunto:</label><input type='text' class='asunto' name='asunto' value='<?php echo $_POST['asunto']; ?>'><?php echo $error3 ?></div>
<div><label>Mensaje:</label><textarea rows='6' class='mensaje' name='mensaje'><?php echo $_POST['mensaje']; ?></textarea><?php echo $error4 ?></div>
<div><input type='submit' value='Envia Mensaje' class='boton' name='boton'></div>
<?php echo $result; ?>
</form>
</body>
</html>
este código funciona perfectamente si lo veo en una página el solito en el navegador...
en el momento que lo cargo en el div, y doy a enviar.. directemente me lleva al index.html , he probado a poner en el action "formulario22.php" he probado a poner <?php echo $PHP_SELF;?> pero siempre me lleva al index..
por eso pienso, que ya que lo estoy cargando dinamicamente, sin querer estoy diciendole que carge el index, pero no si es asi.. y no se como hacerlo de otra manera...
alguien me puede ayudar?
Gracias..