Archive

Posts Tagged ‘php’

PHP Code to Include Content in Layout

December 13th, 2009 256 comments

When I didn’t know PHP I spent a lot of time trying to find the coveted script that would allow me to include content in a page by including a page so that I could change the layout and it would remain the same for all pages, only the content would change. I of course didn’t want to use an iframe because these scroll and look hideous. The solution I found, but did not understand for several months later. When a bit later I lost this code I realized it was time for me to learn PHP. The code I wished to know was the code that allows you to include pages with content like http://example.com/index.php?page=home.php. The layout would be in the file index.php but the content for the homepage would be at home.php. The code to do this would be:

<?php if($_GET['page'] == null) { include “default.php”; } else { include $_GET['page']; } ?>

The explaination of this is:

$_GET['page']
is the PHP way to get a parameter from a url.  In PHP all the page parameters are stored after the ? in the url.  For example in this page index.php?page=anything.php the only variable is page and in this case page is equal to “anything.php”.  The $_GET['page'] gets the value of page.  If you wish to add more variables to the url you simply add an & in between the variables.  For example “index.php?page=anything.php&loggedin=false” Thus $_GET['loggedin'] would result in false.   Next time you do a go0ogle search check the url and you can see these variables.

include “default.php”
The first include will be shown if the page variable is null.  In this case it will show the default page you assign it.

include $_GET['page']
This will show the page of whatever follows the page variable in the url.

For an example of this visit my homepage http://rkania.com/index.php?view=home.  My site has customized code and mod rewrite so it won’t work exactly the same.

Categories: Programming Tags: ,