Hola
Antecedentes: Quiero poner una búsqueda integrada en mi web a través de la API Web Search de Google, usando la librería json de PHP.
Problema: Aparentemente funciona bien (devuelve correctamente los resultados de búsqueda) pero sólo muestra cuatro resultados como máximo, cuando en Google puedo ver muchos más.
No sé si lo he hecho mal, o si es una limitación de la API. No he encontrado info al respecto, ni en Internet ni en la ayuda de Google. A ver si alguien sabe algo o encuentra algún error en mi código, porque ya no sé dónde mirar.
Desde ya, muchas gracias.
Antecedentes: Quiero poner una búsqueda integrada en mi web a través de la API Web Search de Google, usando la librería json de PHP.
Problema: Aparentemente funciona bien (devuelve correctamente los resultados de búsqueda) pero sólo muestra cuatro resultados como máximo, cuando en Google puedo ver muchos más.
No sé si lo he hecho mal, o si es una limitación de la API. No he encontrado info al respecto, ni en Internet ni en la ayuda de Google. A ver si alguien sabe algo o encuentra algún error en mi código, porque ya no sé dónde mirar.
Desde ya, muchas gracias.
require_once ("json.php");
$q = stripslashes ($_POST ['q']);
$api_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
$url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&ht=es&key=$api_key&q=$q+site:".$_SERVER ['SERVER_NAME'];
$data = file_get_contents ($url);
$json = new Services_JSON;
$obj = $json -> decode ($data);
$results = $obj -> responseData -> results;
print ("<h1>Resultados más relevantes</h1><div class=\"text\">");
if (!sizeof ($results))
print ("<p>La búsqueda no obtuvo resultados. Prueba con otra cosa.</p><center><p><form id=\"buscador\" action=\"$PHP_SELF\" method=\"post\"><input class=\"busqueda\" type=\"text\" name=\"q\" tabindex=\"1\" /> <input class=\"boton\" type=\"submit\" value=\" Buscar \" /></form></p></center>");
else {
for ($i=0;$i<sizeof ($results);$i++) {
$tmp = $results [$i];
$tmpHTML.= "<p><a href=\"".$tmp -> url."\">".$tmp -> title."</a><br />";
$tmpHTML.= $tmp -> url."<br />";
$tmpHTML.= $tmp -> content."</p>";
}
echo $tmpHTML;
}
print ("</div>");