Foros del Web » Programando para Internet » PHP »

Que le pasa a esto

Estas en el tema de Que le pasa a esto en el foro de PHP en Foros del Web. Miren mi página web la he realizado de manera modular ya saben del tipo index.php?modulo=algo pero me da estos errores: Cita: Notice: Use of undefined ...
  #1 (permalink)  
Antiguo 29/12/2003, 10:48
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Que le pasa a esto

Miren mi página web la he realizado de manera modular ya saben del tipo index.php?modulo=algo pero me da estos errores:
Cita:
Notice: Use of undefined constant historia - assumed 'historia' in D:\Sitio\grm\php\includes\modular.inc.php on line 9

//Este es al principio del Sitio y este de abajo al final
Notice: Use of undefined constant imprimir - assumed 'imprimir' in D:\Sitio\grm\php\includes\modular.inc.php on line 82

Lo siento! No puedes acceder a este fichero directamente. Debes seguir el vínculo.

Presiona el botón atrás de tu navegador.
//Dicho sea de paso esta parte de Lo siento! ... no es ni de esa página pues es cuando tratas de acceder al sistema de administración directamente.
El archivo modular.inc.php tiene este código:
Código PHP:
       global $modulo;
       global 
$accion;
       global 
$opcion;

       
$modulo= !isset($modulo) ? $modulo;
       
//$modulo=$_GET["modulo"];
                        
switch ($modulo) {
                           case 
historia:
                               include(
"modules/historia.php");
                               break;
                           case 
objetivos:
                               include(
"modules/objetivos.php");
                               break;
                           case 
servicios:
                               include(
"modules/servicios.php");
                               break;
                           case 
eventos:
                               include(
"modules/eventos.php");
                               break;
                           case 
noticias:
                            if ((isset(
$opcion)) && ($opcion == "mostrar")){
                                include(
"modules/noticias.php");
                                break;
                            }elseif ((isset(
$opcion)) && ($opcion == "adicionar")){
                                include(
"modules/noticias.php");
                                break;
                            }
                           case 
ftpweb:
                               include(
"modules/ftpweb.php");
                               break;
 default:
                               include(
"modules/default.php");
                        } 
Ya no se que hacer con esto me dan una ayuda. El sitio es http://www.jovenclub.cu/grm/php/index.php

Saludos
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 29/12/2003, 11:01
Avatar de e-miliox  
Fecha de Ingreso: noviembre-2002
Ubicación: San Antonio - Chile
Mensajes: 223
Antigüedad: 15 años, 1 mes
Puntos: 7
hola

ienes que usar las comillas, en el case, ya que si lo las usas, el php "piensa" que son constantes

switch ($modulo) {
case "historia":
include("modules/historia.php");
break;


saludos
__________________
=PoWeReD By MySeLf!=
  #3 (permalink)  
Antiguo 29/12/2003, 11:20
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Si pero ahora

Si pero ahora siempre me abre por defecto la pagina de historia.php que es el caso index.php?modulo=historia. Por que?
__________________
Ing. Reynier Pérez Mira
  #4 (permalink)  
Antiguo 29/12/2003, 11:54
Avatar de e-miliox  
Fecha de Ingreso: noviembre-2002
Ubicación: San Antonio - Chile
Mensajes: 223
Antigüedad: 15 años, 1 mes
Puntos: 7
mmmm, el codigo se ve bien, quizas si pones algunos "echos" por ahi para ir traceando la variable $modulo, ademas en el case default agrega el break porsiacaso

Código PHP:
    echo ">>> ".$modulo." <<<";
    switch (
$modulo) {
       case 
"historia":
           include(
"modules/historia.php");
           break;
       case 
"objetivos":
           include(
"modules/objetivos.php");
           break;
       default:
           include(
"modules/default.php");
           break; 
__________________
=PoWeReD By MySeLf!=

Última edición por e-miliox; 29/12/2003 a las 11:58
  #5 (permalink)  
Antiguo 29/12/2003, 12:16
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Sigue igual

Oigan esa cosa sigue igual y ya me tiene la cabeza hecha agua. Y para colmo ahora me adorna el fondo de la pagina con esta frase:

Lo siento! No puedes acceder a este fichero directamente. Debes seguir el vínculo.

Presiona el botón atrás de tu navegador.

Pueden verlo aqui: http://www.jovenclub.cu/grm/php/index.php
__________________
Ing. Reynier Pérez Mira
  #6 (permalink)  
Antiguo 29/12/2003, 16:00
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Puede que el fallo este en otra parte del codigo, antes de ese. Porque ese trozo tienes puesto 'global' (esta dentro de una funcion?) y en el error te dice que es includes/modular.inc.php, no index.php (supongo que lo incluyes, pero quizas no del todo bien.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 07:57.