• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Jeanne Boyarsky
  • Ron McLeod
Sheriffs:
  • Paul Clapham
  • Liutauras Vilda
  • Devaka Cooray
Saloon Keepers:
  • Tim Holloway
  • Roland Mueller
Bartenders:

Directory structure issue

 
Greenhorn
Posts: 15
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I currently have a website that was thrown together w/o planning and I am now trying to begin organizing it a little better. The issue I'm having is that I want to move some of the pages into subdirectories, but other pages (such as the main page) will still remain in the root directory. I have a directory called includes that holds the header file, footer file, and navigation files which are included in all pages within the site. My problem is that when I am on a page within the root directory, or a page within the sub directory, the path's need to be different for the links and image files.

For instance, if a page in the root directory is displayed to link to another page I can just link to "example.php", but if i'm on a page within a subdirectory the link needs to be "../example.php".

Only using one file to hold all the link information, is there a simple way to do this?
 
Bartender
Posts: 3648
16
Android Mac OS X Firefox Browser Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
There is a way = to use a so-called configuration file where you define "constants" pointing the correct paths for different cases

For example assuming your directory looks like this
/webroot
/webroot/images
/webroot/subdir1
/webroot/subdir1/subdir2
/webroot/index.php

//subdirectory paths
$SUB1_IMAGE_PATH = "../images"; // for subdir1
$SUB2_IMAGE_PATH = "../../images"; // for subdir2

//root paths
$IMAGE_PATH = "images"; // for index.php

A warning about this approach: as more directories are added maintaining this file can be tedious and error-prone. Also this can be error-prone when programming pointing to the wrong constant so naming convention must be defined and follow through.
 
reply
    Bookmark Topic Watch Topic
  • New Topic