OK, so embed the page onload command into the form page which forces a reload of your view frame when it is called. Do all your db p[rocessing before sending out the html headers, that way the db has already been updated before the view page is refreshed.
Alternatively, have one php file which controls (ie delivers) the frameset and the frame contents. That way php automatically writes the frameset contents according to the latest db query.
There is nothing to stop you creating guestbook.php which handles new entry processing and then writes a fraeset back to the browser, the 2 frame pages being called as guestbook.php?page=form and guestbook.php?page=display
Then simply set flags in the code for:
!$HTTP_GET_VARS['page'] => Build frameset
$HTTP_GET_VARS['page'] == "form"; // => Build form page
$HTTP_GET_VARS['page'] == "display"; // => Build display page
Remember to place your db processing stuff (ie the new gb entry processing) BEFORE the above, ie set a flag to check for your form action and process that before p[roceeding. Remember, do not send out ANY header information prior to building your frameset.