require "../configuration.inc";
if(!isset($pattern)) {
$uri=strstr($REDIRECT_REDIRECT_ERROR_NOTES,'phpweb/');
$uri = strchr($uri,'/');
$uri = substr($uri,1);
$pattern = $uri;
}
function makeBar($no,$page,$pages,$baseurl,$firstdisplayed,$lastdisplayed) {
global $FONTFACE;
if ($page>1) {
$i=$page-1;
$last="
";
} else {
$last=" ";
}
if ($page<$pages) {
$i=$page+1;
$next="
";
} else {
$next=" ";
}
$middle="Displaying results $firstdisplayed to $lastdisplayed";
echo "\n";
echo "\n";
echo "
| \n";
echo "$last
| \n";
echo "$middle
| \n";
echo "$next
| \n";
echo "
| \n";
echo "
\n";
}
$form=$PHP_SELF;
if (!isset($base)) {
if (ereg("^(.+//[^/]+)/",$HTTP_REFERER,&$reg)) {
$base=$reg[1];
}
if ($base==$MYSITE) {
$base="-";
}
}
if ($base=="-") {
$sourceurl=$PHP_SELF;
} else {
$sourceurl=$base.$PHP_SELF;
}
if ($pattern=="") {
echo "Error: No search words specified.
";
echo "Click here for a New Search
\n";
exit();
}
$words=EscapeShellCmd(UrlEncode($pattern));
$config="php";
if ($show=="source") {
$exclude="/manual";
$restrict=$MYSITE."source";
$where="PHP 3.0 site source code";
} elseif ($show=="manual") {
$restrict=$MYSITE."manual";
$exclude="/source";
$where="PHP documentation";
} else {
$exclude="/source";
$restrict=$MYSITE;
$where="PHP 3.0 web site";
}
if (isset($page)) {$off="&page=$page";} else {$off="";}
$query="words=$words&config=$config&exclude=$exclude&restrict=$restrict$off";
exec("$htsearch_prog \"$query\"",&$result);
$rc=count($result);
if ($rc<2) {
echo "There was an error executing this query.
Please try later
";
commonFooter();
exit;
}
if ($result[2]=="NOMATCH") {
echo "Sorry, that URL does not exist, and a quick search for the $pattern ";
echo "keyword did not turn anything up.
";
exit;
}
$matches=$result[2];
$firstdisplayed=$result[3];
$lastdisplayed=$result[4];
$page=$result[5];
$pages=$result[6];
$baseurl=$PHP_SELF."?pattern=$words&show=$show&base=$base";
echo "The page you requested does not exist, however a quick search turned up the ";
echo "following potential pages related to your request.
";
makeBar("",$page,$pages,$baseurl,$firstdisplayed,$lastdisplayed);
$i=7; #skip response header
while($i<$rc) {
if ($base=="-") {
echo $result[$i];
} else {
echo eregi_replace("http://[^.]+\.php\.net/","$base/",$result[$i]);
}
echo "\n";
$i++;
}
echo "
\n";
makeBar("2",$page,$pages,$baseurl,$firstdisplayed,$lastdisplayed);
?>
Search results courtesy of