I use tables to produce the same effect.
Set up a main PHP page with a table.
You can then use a single row for the top part, then multiple column rows for the body.
In the columns, you can place your include statements to make it dynamic.
Something like this:
<table>
<tr><td colspan=2>include headerpage.php</td></tr>
<tr><td>include leftpart.php</td>
<td>include mainbody.php</td></tr>
<tr><td colspan=2>include footerpage.php</td></tr>
</table>
As the user clicks a link, have it load a different mainbody.php, etc.