Have you viewed the source on the interim page - it's basically a meta refresh, this is what I just ripped out of it
<html>
<head><title>PHP Builder Community Forums</title>
<meta http-equiv="Refresh" content="1; URL=search.php?s=&action=showresults&searchid=556357&sortby=&sortorder=">
<meta http-equiv="MSThemeCompatible" content="Yes">
.... etc etc
So basically it just keeps trying to get the results page until that page is ready to appear. I just tested that it doesn't cause multiple gets of the page, too by putting in a counter that's updated in a text file, then a 10 second delay... so it's just a case of a html file like this:
<meta http-equiv="refresh" content="1;URL=waitforit.php">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
Wait now...
</body>
</html>
and just for the sake of it I did this is waitforit.php
<?php
@$value=file_get_contents('count.txt');
$fp=fopen('count.txt', 'w');
fwrite($fp, ++$value); fclose($fp);
sleep(10);
echo "You've run this $value times";
?>