Foros del Web » Programando para Internet » PHP »

Especificar rutas

Estas en el tema de Especificar rutas en el foro de PHP en Foros del Web. Hoa compañeros: ¿Qué me recomiendan para solucionar el problema de rutas de una aplicación web? El sitio está formado por módulos principales: header, nav, y ...
  #1 (permalink)  
Antiguo 27/03/2018, 03:41
 
Fecha de Ingreso: julio-2008
Mensajes: 258
Antigüedad: 16 años, 4 meses
Puntos: 9
Especificar rutas

Hoa compañeros:

¿Qué me recomiendan para solucionar el problema de rutas de una aplicación web?

El sitio está formado por módulos principales: header, nav, y footer. Estos no varían nunca y se encuentran en todas las páginas. Luego tengo otra carpeta llamada "view" y donde se encuentran las paginas del sitio: contacto.php y quienes_somos.php.

La estructura es la siguiente:

/nav
- contacto
- quienes_somos
/sections
- header
- nav
- footer
/view
- contacto
- quienes somos

contacto.php
Código:
<!DOCTYPE html>
<html lang="es">
  
<head>
  <!-- Incluye bootstrap CSS, Google Fonts, y estilos -->
  <?php
  require("../external/meta.php");
  require("../external/stylesheet.php");
  ?>
</head>

<body>
  <!-- Carga secciones generales -->
  <?php
    require("../section/header.php");
    require("../section/nav.php");
  ?>

<!--MAIN-->
<main>
  <div class="main_container">
    <?php
      require("../nav/contacto.php");
    ?>
  </div>
</main>

  <!-- Carga secciones generales -->
  <?php
    require("../section/footer.php");
  ?>

</body>
</html>
El problema surge en que es imposible definir las rutas en el nav puesto que si me encuentro en el root o índex la ruta en el menú para acceder a contacto sería algo así: "view/contacto.php". Y si estamos dentro de contacto.php y queremos ir a quienes_somos.php tendríamos que subir un nivel: "../view/quienes_somos.php". ¿Qué puedo hacer?

Gracias y un saludo de antemano!
__________________
"La diversidad de opiniones crean una perspectiva capaz de ver todas las caras del objeto"
  #2 (permalink)  
Antiguo 27/03/2018, 09:00
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: Especificar rutas

Utiliza una variable global en tu sistema que indique la ruta base de los archivos, si te resulta imposible es porque algo estas haciendo mal, no tiene sentido que tengas que subir un nivel, muestra el código para ver que estas haciendo
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 27/03/2018, 12:58
 
Fecha de Ingreso: julio-2008
Mensajes: 258
Antigüedad: 16 años, 4 meses
Puntos: 9
Respuesta: Especificar rutas

Cita:
Iniciado por xfxstudios Ver Mensaje
Utiliza una variable global en tu sistema que indique la ruta base de los archivos, si te resulta imposible es porque algo estas haciendo mal, no tiene sentido que tengas que subir un nivel, muestra el código para ver que estas haciendo
De acuerdo. Aunque nunca me ha surgido este inconveniente y no sé muy bien qué debo hacer.
Te refieres a hacer algo así ¿no?
Código PHP:
// base directory
$base_dir __DIR__;

// server protocol
$protocol = empty($_SERVER['HTTPS']) ? 'http' 'https';

// domain name
$domain $_SERVER['SERVER_NAME'];

// base url
$base_url preg_replace("!^${doc_root}!"''$base_dir);

// server port
$port $_SERVER['SERVER_PORT'];
$disp_port = ($protocol == 'http' && $port == 80 || $protocol == 'https' && $port == 443) ? '' ":$port";

// put em all together to get the complete base URL
$url "${protocol}://${domain}${disp_port}${base_url}";

echo 
$url// = http://example.com/path/directory 
Resultado:
Código:
 http://localhost:8888/Applications/MAMP/htdocs/tu_pagina
¿Hay alguna forma mejor o más óptima o más segura? No sé si hacerlo así involucra problemas con el acceso a directorios protegidos y demás (seguridad).
__________________
"La diversidad de opiniones crean una perspectiva capaz de ver todas las caras del objeto"
  #4 (permalink)  
Antiguo 27/03/2018, 17:29
 
Fecha de Ingreso: enero-2011
Mensajes: 94
Antigüedad: 13 años, 10 meses
Puntos: 7
Respuesta: Especificar rutas

Creo que se mas o menos lo que quieres hacer, si quieres hacer lo que pienso, ¿no seria mejor hacerlo con funciones?
  #5 (permalink)  
Antiguo 27/03/2018, 23:57
 
Fecha de Ingreso: julio-2008
Mensajes: 258
Antigüedad: 16 años, 4 meses
Puntos: 9
Respuesta: Especificar rutas

Cita:
Iniciado por nedyer Ver Mensaje
Creo que se mas o menos lo que quieres hacer, si quieres hacer lo que pienso, ¿no seria mejor hacerlo con funciones?
Me gusta esa solución. ¿Podrías darme alguna idea para empezar?
__________________
"La diversidad de opiniones crean una perspectiva capaz de ver todas las caras del objeto"

Etiquetas: especificar, html, rutas
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 09:42.