_EOF_; } ## arguments : ## $csevars array ## $csevars[sitesearch] string, replace your DOMAIN or HTTP_HOST ## $csevars[action] string, your REQUEST_URI or URL action(ex: /search.php or /search/) ## $csevars[kwd] string, keyword from GET form ## function get_csegooglelist($csevars) { global $_GET; // for PHP/4.0.x $skip = ($start = $_GET['start']) ? "&start=$start&sa=N" : ''; $kwd = urlencode($csevars['kwd']); $sitesearch = $csevars['sitesearch']; $fpath = "/u/UWCSE?q=$kwd&hl=ko&domains=$sitesearch&sitesearch=$sitesearch"; if($fp = @fsockopen('www.google.com', 80, &$errno, &$errstr, 10)) { fputs($fp, "GET $fpath$skip HTTP/1.0\r\n\r\n"); while(!feof($fp)) $list .= fgets($fp,1024); fclose($fp); ## remove html head and etc ## $list = eregi_replace('^.+','',$list); $list = eregi_replace('^.+.+$","\n\n",$list); $list = ereg_replace(".+$",'',$list); // do not remove this line $list = eregi_replace('.+.+','',$list); // do not remove this line ## string replace to my site format ## $from = array( '/]+)>([^>]+)>/i', '/cs\.washington\.edu/i', '/td bgcolor=#3366cc/i', '/&lr=/i', '/san2@/i', ';/u/UWCSE\?q=[^>]+&(start|filter)=;i', ); $to = array( '', $sitesearch, 'td bgcolor=#8899CC', '', 'san2(at)', $csevars['action']."?kwd=$kwd&\\1=" ); $list = preg_replace($from,$to,$list); } return $list; } ## print searched lists ## ## argument : void ## ## return : long string ## function print_searched() { global $_GET, $_SERVER; // for PHP/4.0.x $csevars['sitesearch'] = str_replace('www.','',strtolower($_SERVER['HTTP_HOST'])); $csevars['action'] = preg_replace('/\?.*/i','',$_SERVER['REQUEST_URI']); $csevars['kwd'] = stripslashes(trim($_GET['kwd'])); $searchform = get_csesearchform($csevars); echo "\nSearch site target '$csevars[sitesearch]'(in UW CSE)\n$searchform\n\n"; if($_GET['kwd']) { echo '
'."\n"; echo get_csegooglelist($csevars); echo '
'."\n"; echo "\n
\n$searchform
\n\n"; } } print_searched(); ?>