•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the PHP section within the Web Development category of DaniWeb, a massive community of 427,742 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,905 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our PHP advertiser: Lunarpages PHP Web Hosting
Views: 30749 | Replies: 3
![]() |
| |
•
•
Join Date: Feb 2002
Location: Lawn Guylen, NY
Posts: 10,949
Reputation:
Rep Power: 32
Solved Threads: 116
Basic Includes
Lets say you have a Web site with 10 or so pages, and you want to update the navigation. You don't want the hassle of updating every single page. That's where includes come in handy.
Your basic include will look like this.
[php]
<?php include ( 'includes/navigation.php' ); ?>[/php]
That's it! What I typically do is design a page as usual, then begin breaking sections up into includes. To use this effectively:
1) Find sections or tables that will repeat throughout the site.
2) Cut the section of code out and paste it into another file.
3) Save this file into an includes folder.
4) Where the original section was, insert your PHP inclue code, referencing the file name.
Let's say I want to use the highlighted code on multiple pages.
[php]
<table>
<tr>
<td>
This table will be on every page.
</td>
</tr>
</table>
<table>
<tr>
<td>
This is some other content.
</td>
</tr>
</table>[/php]
I'll include it like this.
[php]
<?php include ( 'includes/table.php' ); ?>
<table>
<tr>
<td>
This is some other content.
</td>
</tr>
</table> [/php]
Now if I change table.php later, it will change on every page automatically. It's just like using image tags, but instead of image files, you are including pieces of html. This can save you hours and hours.
Alan Hettinger is a freelance designer available for print, web, and multimedia projects.
Lets say you have a Web site with 10 or so pages, and you want to update the navigation. You don't want the hassle of updating every single page. That's where includes come in handy.
Your basic include will look like this.
[php]
<?php include ( 'includes/navigation.php' ); ?>[/php]
That's it! What I typically do is design a page as usual, then begin breaking sections up into includes. To use this effectively:
1) Find sections or tables that will repeat throughout the site.
2) Cut the section of code out and paste it into another file.
3) Save this file into an includes folder.
4) Where the original section was, insert your PHP inclue code, referencing the file name.
Let's say I want to use the highlighted code on multiple pages.
[php]
<table>
<tr>
<td>
This table will be on every page.
</td>
</tr>
</table>
<table>
<tr>
<td>
This is some other content.
</td>
</tr>
</table>[/php]
I'll include it like this.
[php]
<?php include ( 'includes/table.php' ); ?>
<table>
<tr>
<td>
This is some other content.
</td>
</tr>
</table> [/php]
Now if I change table.php later, it will change on every page automatically. It's just like using image tags, but instead of image files, you are including pieces of html. This can save you hours and hours.
Alan Hettinger is a freelance designer available for print, web, and multimedia projects.
Last edited by cscgal : Mar 14th, 2004 at 11:58 am.
Dani the Computer Science Gal
Do you run a computer-related website? Feature it in our niche link directory!
Do you run a computer-related website? Feature it in our niche link directory!
•
•
Join Date: Jan 2008
Posts: 37
Reputation:
Rep Power: 1
Solved Threads: 6
Hi,
This is a topic I am having an issue with presently.
I have separated my HTML code from my PHP code, so that I now have a header, footer and navigation template, which will be used on every webpage. Then the content is the only aspect that will change from page to page (well, and some other parts such as the login/logout box, etc).
The issue I am encountering is that the links in my navigation menu are static and therefore cannot adapt if the menu is included in a page that is a directory deeper in my website. E.g.:
+ public_html
+ - index.php
+ - news
+---+ - index.php
+ - another dir
+---+ - index.php
Therefore, if I include the navigation in the index.php page in the base of the public_html directory, everything works fine. If I however include it in the index.php in the news directory, the links are all one level off.
I've considered two solutions for this, neither of which I like very much. The first is to use absolute file references, so the full path '/website/home/templates/navigation/navigation.tpl', but this could be a problem if I want to use the code somewhere else, where the structure is different. I wouldn't want to have to edit every link.
The other method I considered was to pass a parameter to my templating engine defining the directory structure offset, which is the appended to the beginning of any path before it is used. So for the base directory, this would be either an empty string, '', or '.' . For a directory deeper it would be 'dirname', and a directory higher './../' or '..' .
Again however, this solution looks messy. Can anyone suggest a better solution please?
If you've made it this far, thanks for reading. Please find a beer with your name on it in the bar
I know I need one.
R.
This is a topic I am having an issue with presently.
I have separated my HTML code from my PHP code, so that I now have a header, footer and navigation template, which will be used on every webpage. Then the content is the only aspect that will change from page to page (well, and some other parts such as the login/logout box, etc).
The issue I am encountering is that the links in my navigation menu are static and therefore cannot adapt if the menu is included in a page that is a directory deeper in my website. E.g.:
+ public_html
+ - index.php
+ - news
+---+ - index.php
+ - another dir
+---+ - index.php
Therefore, if I include the navigation in the index.php page in the base of the public_html directory, everything works fine. If I however include it in the index.php in the news directory, the links are all one level off.
I've considered two solutions for this, neither of which I like very much. The first is to use absolute file references, so the full path '/website/home/templates/navigation/navigation.tpl', but this could be a problem if I want to use the code somewhere else, where the structure is different. I wouldn't want to have to edit every link.
The other method I considered was to pass a parameter to my templating engine defining the directory structure offset, which is the appended to the beginning of any path before it is used. So for the base directory, this would be either an empty string, '', or '.' . For a directory deeper it would be 'dirname', and a directory higher './../' or '..' .
Again however, this solution looks messy. Can anyone suggest a better solution please?
If you've made it this far, thanks for reading. Please find a beer with your name on it in the bar
I know I need one.R.
Last edited by robothy : May 10th, 2008 at 6:04 am.
you could have different paths like
$nav='/website/home/templates/navigation/'; $temp_base='/website/home/templates/'; $base_url='/website/home/'; // /website/home/templates/navigation/navigation.tpl include $nav.'navigation.tpl'; include $temp_base.'navigation/navigation.tpl'; include $$base_url.'templates/navigation/navigation.tpl';
![]() |
•
•
•
•
•
•
•
•
DaniWeb PHP Marketplace
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Similar Threads
- Basic PHP (PHP)
- Test For Php Includes (PHP)
- PHP Includes??? (PHP)
- Setting up PHP (PHP)
- Hosting multiple Apache/PHP/mysql sites - how many? (Linux Servers and Apache)
- Multiple PHP INCLUDES (PHP)
Other Threads in the PHP Forum
- Previous Thread: if file exists
- Next Thread: Sending Emails



Hybrid Mode