topical media & game development
server-webapi-code-06-search.php / php
<?php
require ("../common_db.php");
adminJoe@example.org";
if (isset(searchQuery = html_entity_decode(start = client = new soapclient("http://api.google.com/search/beta2", false);
client->getError())
{
client->getError() . "\n";
echo "An error was encountered while trying to fufil your request, please try again later.";
mail(error");
exit;
}
mainResult = getGoogleResults(&searchQuery, forumResult = getGoogleResults(&searchQuery, suggestions = getSuggested(client->fault)
{
echo "An error was encountered while trying to fulfill your request, please try again later.";
ob_start();
print_r(error = ob_get_clean();
mail(error");
} else {
if (admin, "Client Fault", searchQuery = htmlentities(searchQuery . "</i><br>";
mainResult['startIndex'];
mainResult['endIndex'];
mainResult['resultElements'];
if (count(queryResults as item['URL']}\">{item['snippet'] . "<br><br>\n";
}
}else
{
echo "No results to display";
}
echo "Search results from our community forum, note that example.com is not
responsible for the content provided in the community forums<br><br>";
forumResult['startIndex'];
forumResult['endIndex'];
forumResult['resultElements'];
if (count(queryResults as item['URL']}\">{item['snippet'] . "<br><br>\n";
}
}else
{
echo "No results to display";
}
mainResult['endIndex'];
echo "<br><br>";
echo "<a href=\"./nusoap.simple.php?query={nextStart\">Next 10 Results</a>";
}
}
}
function runGoogleSearch(searchQuery, query = array(
'key'=>'u6U/r39QFHK18Qcjz/XdWSbptVaj9k1t',
'q'=> start,
'maxResults'=>10,
'filter'=>true,
'restrict'=>'',
'safeSearch'=>true,
'lr'=>'',
'ie'=>'',
'oe'=>''
);
client->call("doGoogleSearch", result;
}
function getGoogleResults(searchQuery, key = md5(searchQuery);
// Check for recent items
key' AND ((NOW() - `time`) < 84600)";
query);
print_r(results) > 0)
{
echo "Using Cached Data";
//Cache exists and is recent, Create object to return
result['estimateIsExact'] = result['estimatedTotalResultsCount'] = result['startIndex'] = searchResultQuery = "SELECT * FROM 06_google_cache WHERE `query` = 'start'";
searchResultQuery);
start + count(result['resultElements'] = result;
}else
{
//Save results
client, start);
if (result;
} else {
if (result;
} else
{
queryResults = query = mysql_escape_string(index = 0;
key', 'start', '{result['estimatedTotalResultsCount']}', null)";
insertQuery(queryResults) > 1)
{
foreach(item)
{
item['URL']);
item['snippet']);
item['title']);
start . query);
key', 'query', 'snippet', 'url')";
replaceQuery(linkID);
result;
}
}
}
}
function getSuggested(suggestions = array();
query);
query AS word = mysql_real_escape_string(linkID);
word'";
query, 2);
if (count(suggest as suggestions[] = suggestions;
}
?>
(C) Æliens
20/2/2008
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.