OVH Cloud OVH Cloud

API Google (la crise !)

1 réponse
Avatar
newsreader31
Bonjour,
J'essaye la fameuse API google, et j'ai un pb. Si je fais un print_r
$resultats, je vois toutes les données, donc à priori, j'ai tout bien
installé.
Mais si j'essaye de formater les résultats pour les afficher, je n'en
trouve aucun !!!
J'ai cherché sur le web, et tout le monde dit que ca marche bien !
Aidez moi, SVP ...
Merci

<?php
require_once("SOAP_Google.php");

echo "Creation Objet GOOGLE<br>";

$google = new SOAP_Google("d01hxCVQFHJhG3QYru9Cp/0pPmZKmhn0");

echo "Go Search<br>";

$resultats = $google->search(
array(
'query' => 'domotique',
'restrict' => 'countryFR',
'safeResearch' => true,
'start' => 0,
'maxResults' => 10,
'lr' => 'lang_fr|lang_en',
'ie' => 'utf8',
'oe' => 'utf8'
)
);

echo "Show Result<br>";

if (false !== $resultats) {
echo "List of results<br>";
if (sizeof($resultats['resultElements']) > 0) {
$numero = $resultats['startIndex'];
// réponses
foreach ($resultats['resultElements'] as $reponse) {
// URL + titre
echo ($numero++);
echo '. <a href="'.$reponse['URL'].'">'.$reponse['title'].'</a>';
// extrait
echo '<br />'.$reponse['snippet'].'<br />';
// description ODP
if (($description = $reponse['directoryTitle']) != '') {
echo 'Description: '.$description.'<br />';
}
// catégorie ODP
if (($categorie =
$reponse['directoryCategory']['fullViewableName']) != '') {
echo 'Cat&eacute;gorie: ';
echo '<a href="http://directory.google.com/'.$categorie.'/">';
echo str_replace('/', ' > ', $categorie).'</a><br />';
}
// lien + cache
$url = eregi_replace('^http://', '', $reponse['URL']);
echo '<font color="#008000">'.$url.' -
'.$reponse['cachedSize'].'</font>';
echo ' - <a
href="http://www.google.com/search?q=cache:'.urlencode($url);
echo '" target="_blank">En cache</a>';
// pages similaires
echo ' - <a href="api-google.php?q=related:'.urlencode($url).'">';
echo 'Pages similaires</a><br /><br />';
}
// page prec
if ($resultats['startIndex'] > $maxResults) {
echo '<a href="api-google.php?q='.urlencode($q).'&debut=';
echo ($resultats['startIndex']-$maxResults-1).'">&laquo;</a>';
}
// n° page courante
echo '&nbsp;'.(int)(($resultats['startIndex'] /
$maxResults)+1).'&nbsp;';
// page suiv
if (($resultats['startIndex'] + $maxResults) ==
($resultats['endIndex'] + 1)) {
echo '<a href="api-google.php?q='.urlencode($q).'&debut=';
echo ($resultats['endIndex']).'">&raquo;</a>';
}
} else {
echo "0 results ?";
}
} else {
echo "Query failed.<br>";
}
?>

1 réponse

Avatar
Thierry
Bonjour,

newsreader31 a écrit :

if (sizeof($resultats['resultElements']) > 0) {


J'avais galéré avec cette même classe et on m'avait aidé ici.
C'est une classe, pas un tableau, donc :

if (sizeof($resultats->resultElements) > 0)

C'est bizarre qu'il ne t'affiche pas d'erreur.

--
"MOI JE VEUX JOUER DE L'HELICON (PON PON PON PON)"