As above.
What I usually do is create an index page and put something similar to the following where I would have put the frame:
PHP:
<?php
if(is_file("./" . $_GET['page'] . ".php"))
{
include_once($_GET['page'] . ".php");
}
else
{
include("home.php");
}
?>
This provides protection to a certain extent to injection-based attacks as it checks that the file exists before displaying it. If the file does not exist, the script just displays the 'home.php' file.
Obviously you now have to include the variable "page" in all of your links so they look something like
index.php?page=favmusic.
As for displaying the information generated by this little script, try googling for "CSS Tutorials" and you'll find pleanty of resources on how to lay out your website really well.
HTH,
Freakish_05