Foros del Web » Programando para Internet » PHP »

Error de includes

Estas en el tema de Error de includes en el foro de PHP en Foros del Web. Hola: Hace poco deje una consulta hacerca de modulacion y el uso de formularios pues bien despues de algunos intentos logre que funcione sinembargo tengo ...
  #1 (permalink)  
Antiguo 20/07/2004, 15:39
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 13 años, 6 meses
Puntos: 0
Exclamación Error de includes

Hola:

Hace poco deje una consulta hacerca de modulacion y el uso de formularios
pues bien despues de algunos intentos logre que funcione sinembargo tengo un error que no puedo explicar el porque..

Sera mejor que vaya por partes

1. en mi index tengo un switch con includes() para modular la web

uno de includes llama a contactos.php y este a su vez envia los datos a recibidos.php
es aqui donde validos mis datos si no estan bien redirecciona a un apagina error.php si es correcto envia un email y redirecciona a motor.php(muestra un mensaje de conformidad de envio de email)

2. Haciedo el include hasta contactos.php
mi direcciom quedaba asi:
Código PHP:
http://misitio.com/index.php?PER=formulario 
3. En la pagina recibidos.php donde se valida los datos si estan vacios los campos:

Código PHP:
if((empty($nombre)) or (empty($email)) or (empty($asunto)) or  (empty($pais)) or  (empty($texto)))     
        {      
header("location:http://misitio.com/index.php/?PER=formulario&contactos=error");  
            
        } 
uno parecido si todo esta ok y se envia el email seri aalgo asi:

Código PHP:
//envio email()
header("location:http://misitio.com/index.php/?PER=formulario&contactos=enviados"); 


4. ahora como hago los includes

Código PHP:
<?php
switch($formulario

default: 
include(
'web/contactos/contacto.php'); 
break; case 
"error"
include(
'web/contactos/error.php');
break; case 
"enviado"
include(
'web/contactos/motor.php');

}
?>
5. y aclarar que para obtener la variable asi index.php?PER=
uso otro include que ya no viene al caso mencionar


Pues espero no habe mariado a nadie ....

Ahora el ERROR ...
pues en la parte superior de mi web uso un include para poner el rotador de banner
cuando entro al formulario de contacto la direcion queda asi:

Código PHP:
http://misitio.com/index.php/?PER=formulario 
si envio los datos del formulario si no son validos me muestra el mensaje de error de la redireccion que uso en recibidos.php y mi direccion aparece como queria , asi:

Código PHP:
http://misitio.com/index.php/?PER=formulario&contactos=error 
si no hay error me muestra el mensaje diciendo que todo esta bien y mi direccion aparece asi:

Código PHP:
http://misitio.com/index.php/?PER=formulario&contactos=enviados 
Lo cual esta bien el problema es que donde hacia el include para mi rotador me aparece el siguiente mensaje de error

Código PHP:
to=&enviar=Enviar to not supported.
Invalid method in request nombre=&email=&url=http%3A%2F%2F&pais=Espana&asunto=Asunto&texto=&enviar=Enviar 
Nose porque aparece si todo lo hace bien
ni porque parece donde hago el include a mi rotador de banner...
es muy extraño

Espero que alguien me allas entendido y que pueda ayudarme

O como trabajar con formulario mediante POST cuando se tiene una web modular
  #2 (permalink)  
Antiguo 20/07/2004, 15:58
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 14 años, 8 meses
Puntos: 24
no se a que se deba

la verdad no se a que se deba el error.. pero mi ra te recomiendo el articulo de zona php sobre webs modulares... es abstante bueno (simpre lo hago, no es que sea nada de zona php, no vallan a pensar mal solo me gusto mucho el articulo)
__________________
SEO en Medellin
  #3 (permalink)  
Antiguo 20/07/2004, 16:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Por qué no usas los arrays supergobales? ($_POST, $_GET.. etc) .. Será más segura tu aplicación y sobre todo aquí podremos entendernos mejor de que dato te refieres cuando llamas a tus variables .. por qué al ser todas "globales" no se vé de donde provienen las variables.

Por lo demás .. no se vé que código completo usas en recibidos.php .. pero por si usas más código bajo ese if() que si se cumple redirecciona vía header("Location ....) a otro script/página . .sería altamente recomendable que usases un exit; despues de tu header("Location ...) (lo mismo con cualquier otro header() que uses en otros scripts.

El "header("Location ..." redirecciona el navegador a otro URL .. pero lo hace cuando el script PHP terminó su proceso por completo hasta el final ..así que por ahí te pueden llegar muchos problemas inesperados si no terminas la ejecución del script (con exit) en ese momento que es lo que realmente quieres hacer: cambiar en ese punto a tal script/página.

Un saludo,
  #4 (permalink)  
Antiguo 20/07/2004, 16:50
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 13 años, 6 meses
Puntos: 0
Hola:

La verdad es que llevo mucho tiempo usando este tipo de modulacion para mi web y usar otra como la de zonaphp seria empesar desde cero todo...ademas que no me gusta mucho ese tutorial pero estaria dispuesto a analizar algun tutorial sobre el tema si alguien me dice donde puedo encontar uno...

Pero por ahora necesito solucionar ese problema en realidad es que tengo problemas con todos los formularios que envian datos por metodo POST y ya no quiero seguir usando IFRAME para solventarlo, jejeje.....

Mi problema son la web modular y los formularios

Vere de implementar el exit; y ver como va....

si alguien tiene alguna alternativa mas la agradeceria muchoo..........
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:37.