Встраиваем поиск от google на свой сайт

Постучались в аську попросили помочь интегрировать поиск от google на сайт. Сделал простенький пример, страничку поиска. Если не поможет - я не виноват. 1. Для работы нужен PHP 5 (ну или библиотечку JSON подключить) 2. Модуль CURL, или обходиться без него (можно как файл читать или через сокеты или ещё какть, например snoopy.php) сам код инсайде. (если честно мне просто не терпится парсер php проверить)))

<?php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
&
lt;!--РАСХОДИМСЯТУТ НЕ НА ЧТО СМОТРЕТЬ!--&gt;
&
lt;html xmlns="http://www.w3.org/1999/xhtmlxml:lang="en" lang="en" /&gt;
  &
lt;head&gt;
        &
lt;title&gt;ЙoSeo!&lt;/title&gt;
        &
lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
        &
lt;meta name="keywords" content="Йо, Seo, Йода, Поиск"/&gt;
        &
lt;meta name="description" content="Йо, Seo! Поисковик по поисковикам. Найти и перепрятать" /&gt;
  &
lt;/head&gt;
  &
lt;style&gt;
    
body {
            
margin0 0 0 0padding20px;
            
font-familygeorgiaverdana"Lucida Grande"arialhelveticasans-serif;
            
font-size:16px;
            
font-weight:normal;
            
line-height:120%;
            
color#333;
            
background#fff url('topbluefade.gif') repeat-x;
    
}
    
form {
            
text-aligncenter;
    }
    
div.copyright {
            
font-size11px;
            
color#666;
            
text-aligncenter;
            
font-familyverdanaverdana"Lucida Grande"arialhelveticasans-serif;
    }
    
{
            
color:#990000;
            
text-transformlowercase;
    }
    
a:visited {
            
colorgrey;
    }
  &
lt;/style&gt;
  &
lt;body&gt;
        <
br/>
        <
br/>
        &
lt;?php
        
if (isset($_GET['q'])) $q $_GET['q']; else $q="";
        ?&
gt;
        &
lt;form action="" method="get" onSubmit="validForm(this); return false"&gt;
                &
lt;input type="text" name="q" id="q" value="&lt;?=$q;?&lt;" maxlength="512" size="50" style="width:300px"  />
                &
lt;input type="submit" value="WHARRGARBL!"  /&gt;
                <
br/>
        &
lt;/form&gt;
        <
br />
        &
lt;?php
        
if ($q != ""){
                
$query =substr(strval($q),0,255);
                        
//google-ajax
                        
$query=str_replace(' ','+',$query);
                        
//json // php5 needed
                        
$i 1;
                        for (
$page 1$page<=2$page++) {//lr=lang_ru
                                
$url "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&hl=ru&q;=".urlencode($query)."&rsz=large&start;=".$page;
                                
///* localhost
                                
$ch curl_init();//curl needed
                                   
curl_setopt($chCURLOPT_CONNECTTIMEOUT30);
                                   
curl_setopt($chCURLOPT_TIMEOUT30);
                                   
curl_setopt($chCURLOPT_RETURNTRANSFERtrue);
                                   
curl_setopt($chCURLOPT_NOBODYfalse);
                                   
curl_setopt($chCURLOPT_HEADERfalse);
                                   
curl_setopt($chCURLOPT_URL$url);
                                   
$body=curl_exec&#40;$ch&#41;;
                                
curl_close($ch);
                                
//localhost*/
                                //$body = file_get_contents&#40;$url&#41;; // если курла нет чемть заменить
                                
$json json_decode($body);
                                foreach (
$json->responseData->results as $resultjson) {
                                        
$result_google['urls'][$i] = "<a href='".$resultjson-<unescapedUrl."' content='".$resultjson-<content."'>".$resultjson->title."</a>";
                                        
$urll="<a href=\"".$resultjson->unescapedUrl."\">".$resultjson->unescapedUrl."</a>";
                                        
$result_google['contents'][$i] =  $resultjson->content;
                                        
$result_google['visibleUrl'][$i] =  $resultjson->unescapedUrl;
                                        
$i++;
                                }
                        }

                        
$resultstr "<ol>";
                        for (
$i 1$i <= count($result_google['urls']); $i++) {
                                        
$result['urls'][$k] = $result_google['urls'][$i];
                                        
$result['urlscontent'][$result['urls'][$k]] = "<img src=\"img/google.ico\" />".$result_google['contents'][$i];
                                        if (
count($result_google['urls'])>=$i){
                                                
$resultstr.="<li><div class=result-url>&nbsp;<img src=\"img/google.ico\" />&nbsp;".str_replace("href="," onclick=\"sendData(this)\" href=",$result_google['urls'][$i])."</div>";
                                                
$resultstr.=$result_google['contents'][$i];
                                                
$resultstr.="<br /><span style='color: rgb(0, 102, 0);'>"$result_google['visibleUrl'][$i] ." </span></li>";
                                                
$resultstr.="<br /><br />";
                                }
                        }
                        echo 
$resultstr."</ol>";
        }
        ?&
gt;
        <
div class="copyright">
                <
class=copyright href="http://yoseo.ru">YoSeo</a>
                <
br/>
                
Сделано с любовью.
                <
br/>
        </
div>
  &
lt;/body&gt;
&
lt;/html&gt;
?>

 (0) Написал recoilme, 2008-07-28 14:11:28  ответить

черт. < и > надо заменить на > кавычки угловые)
Рабочий пример этого скрипта: http://localhost/yoseo.ru/www/google.php

(0)  Написал recoilme, 2008-07-28 14:13:29  ответить

Этот файл в архиве, чтоб с кавычками не мучаться:
http://recoilme.ru/download/google.zip

(0)  Написал recoilme, 2008-07-28 15:45:14  ответить