Hola a todos... Estoy haciendo una web muy simple, y para ordernarme un poco decidi hacer las distintas paginas separadas, pero mostrarlas a todas en un mismo index.php, y anda barbaro, pero en la de contacto, cuando envio el formulario es como si ignorara el codigo PHP para enviar/comprobar el formulario... (la comprobacion la hice en javascript, pero tambien en PHP en caso de q el usuario tenga desactivado el javascript...) pero ni me toma las acciones del formulario y cuando doy 'enviar' no pasa nada...
Por ej: la web es personal y tiene una pagina de inicio, acerca de..etc. y contacto.
Esas paginas yo las tengo separadas cada una de ellas en un PHP, pero lo unico q contiene cada uno de esos archivos es lo q muestra esa pagina, ya q todo es visualizado con el index.... algo asi:
Código PHP:
<?php
define(PAGES, true);
?>
<html>
<head></head>
<body>
<?php
/**
* las paginas se obtienen por GET, Ej: index.php?link=contacto
*/
$link = isset($_GET['link']) ? $_GET['link'] : '';
/**
* En la funcion display() se fija si existe el archivo de la pagina a la q se quiere
* include() ... si el archivo no existe, imprime un error...
*
* Por Ej. en el caso de 'contacto' incluye el archivo: contacto.php
*/
switch ($link) {
case 'experiencia': display('experience');
break;
case 'servicios': display('services');
break;
case 'historia': display('history');
break;
case 'ubicacion': display('location');
break;
case 'contacto': display('contact');
break;
default: display('home');
?>
</body>
</html>
Y el archivo contacto.php es algo asi:
Código PHP:
<?php
/**
* En el index.php esta la declaracion define(PAGES, true);
* Entonces cuando se incluye la pagina en el index, primero se fija si esta
* definida la constante PAGES para mostrar la pagina... Esto lo hice para q la
* pagina contacto.php no se muestre si intentamos verla directamente
* desde el script, por ej: dominio.com/contacto.php ya
* que solo quiero que se muestre desde el index...
*/
if (!defined('PAGES') {
exit;
}
else { ?>
<p><!-- CONTENIDOS EN HTML --></p>
<?
}
?>
Creo que me explico hasta aca... El tema es q en la pagina de contacto, dentro del 'else', donde van los contenidos como explike arriba... Tengo el formulario... y ahi mismo tambien tengo el codigo que envia el formulario, por ej:
Código PHP:
<?php
if ($submit) {
// Aca se toman los valores del $_POST, se comprueba si los campos estan correctos, y manda el mail... si los campos estan mal, larga error para q se complete bien el formulario...
}
?>
Ahi esta el problema... no se porke el formulario no funciona... no comprueba, no manda ni nada... :(
Y mal hecho no esta, porke lo probe poniendolo directamente en el index y anda, pero cuando lo pongo en la pagina de contacto.php que se muestra a traves de include() ahi es cuando no me funciona...
Espero que alguien me entienda y me ayude!
saludos...