My students learning PHP ask me to show how to make a single page web application (SPA) in PHP using master page concept. In this tutorial I am going to show you how to do it as simple as possible.
If you want to have HEADER,FOOTER ,LEFT & RIGHT, panel same of more then one page, so we can use master page concept.
Copy and save file in you project directory and run . In this example master.php is treat as a master file which includes specific file which called using hyperlink. Each link is associated with a unique value ,which is received in same page. The value of hyperlink will received using $_REQUEST[‘id’], Corresponding to hyperlink . switch called individual file which is created separately in the same directory as inbox.php, draft.php, compose.php, mail.php.
master.php
<table width=”684″ border=”1″ align=”center”>
<tr>
<td height=”445″><table width=”100%” border=”1″>
<tr>
<td height=”79″> </td>
</tr>
<tr>
<td height=”335″><table width=”100%” border=”1″>
<tr>
<td width=”21%” height=”327″><table width=”100%” border=”1″>
<tr>
<td><a href=”master.php?id=1″>Inbox</a></td>
</tr>
<tr>
<td><a href=”master.php?id=2″>Compose</a></td>
</tr>
<tr>
<td><a href=”master.php?id=3″>Draft</a></td>
</tr>
<tr>
<td><a href=”master.php?id=4″>Mail</a></td>
</tr>
</table></td>
<td width=”58%”>
<?php
$link_id=$_REQUEST[‘id’];
switch($link_id)
{
case 1:
include(‘inbox.php’);
break;
case 2:
include(‘compose.php’);
break;
case 3:
include(‘draft.php’);
break;
case 4:
include(‘mail.php’);
break;
default :
include(‘inbox.php’);
}
?></td>
<td width=”21%”> </td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
</table></td>
</tr>
</table>
inbox.php
<table width=”375″ height=”328″ border=”1″ bgcolor=”#CC6600″>
<tr>
<td height=”322″> </td>
</tr>
</table>
compose.php
<table width=”375″ height=”328″ border=”1″ bgcolor=”#663300″>
<tr>
<td height=”322″> </td>
</tr>
</table>
draft.php
<table width=”375″ height=”328″ border=”1″ bgcolor=”#66CC99″>
<tr>
<td height=”322″> </td>
</tr>
</table>
mail.php
<table width=”375″ height=”328″ border=”1″ bgcolor=”#999999″>
<tr>
<td height=”322″> </td>
</tr>
</table>
It still reloads the pages I though the point was for it to seamlessly transition.
Sorry will you describe your problem …., Pages will be loaded as it was not implemented using ajax its pure php work