";
if (isset($_GET['q'])) { // if there's a search query, show the results for it
$query = urlencode($_GET["q"]);
$show_results = TRUE;
$search_url = "https://html.duckduckgo.com/html?q=" . $query;
$context = stream_context_create([
'http' => [
'header' => "Cache-Control: no-cache\r\n" .
"Pragma: no-cache\r\n" .
"User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 2_0 like Mac OS X) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5A347 Safari/525.20\r\n"
]
]);
if (!$results_html = file_get_contents($search_url, false, $context)) {
$error_text .= "Failed to get results, sorry :(
";
}
$simple_results = $results_html;
$simple_results = str_replace('strong>', 'b>', $simple_results); //change to
$simple_results = str_replace('em>', 'i>', $simple_results); //change to
$simple_results = clean_str($simple_results);
$result_blocks = explode('', $simple_results);
$total_results = count($result_blocks) - 1;
for ($x = 1; $x <= $total_results; $x++) {
if (strpos($result_blocks[$x], '') === false) { //only return non ads
// result link, redirected through our proxy
$result_link = explode('class="result__a" href="', $result_blocks[$x])[1];
$result_topline = explode('">', $result_link);
$result_link = str_replace('//duckduckgo.com/l/?uddg=', '/read.php?a=', $result_topline[0]);
// result title
$result_title = str_replace("", "", explode("\n", $result_topline[1]));
// result display url
$result_display_url = explode('class="result__url"', $result_blocks[$x])[1];
$result_display_url = trim(explode("\n", $result_display_url)[1]);
// result snippet
$result_snippet = explode('class="result__snippet"', $result_blocks[$x])[1];
$result_snippet = explode('">', $result_snippet)[1];
$result_snippet = explode('', $result_snippet)[0];
$final_result_html .= "
" . $result_title[0] . "
"
. $result_display_url . "
" . $result_snippet . "
";
}
}
}
//replace chars that old machines probably can't handle
function clean_str($str)
{
$str = str_replace("‘", "'", $str);
$str = str_replace("’", "'", $str);
$str = str_replace("“", '"', $str);
$str = str_replace("”", '"', $str);
$str = str_replace("–", '-', $str);
$str = str_replace("'", "'", $str);
return $str;
}
?>
FrogFind!
Search Results for
FrogFind!
The Search Engine for Vintage Computers
Built by Action Retro on YouTube | Why build such a thing?
Powered by DuckDuckGo