'), '', $query); print ''; print ' '; print "$query を検索。@2ちゃんねる"; print '
'; print '
ふつうな検索@2ch0.9
'; print "件表示"; ob_start(); $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $KEYURL); curl_exec ($ch); curl_close ($ch); $buff = ob_get_contents(); ob_end_clean(); ob_start(); $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $ADURL); curl_exec ($ch); curl_close ($ch); $ADbuff = ob_get_contents(); ob_end_clean(); $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startElement", "endADElement"); xml_set_character_data_handler($xml_parser, "characters"); xml_parse($xml_parser, $ADbuff); xml_parser_free($xml_parser); $ADTXT .= '
'; $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characters"); xml_parse($xml_parser, $buff); xml_parser_free($xml_parser); print '
'; $pagenum = ceil($TOTAL / $_GET[c]); if($pagenum > 20){$pagenum = 20;} for ($i = 1; $i < $pagenum; $i++) { if($i != ($_GET[p]+1)){ $num = $i - 1; $QUE = eregi_replace("p=[0-9]*", "p=$num", $QUE); print " $i "; }else{ print "$i "; $QUE = eregi_replace("p=[0-9]*", "p=$i", $QUE); $next = " 次の$_GET[c]件 "; } } print $next; print '


c 2004 2ちゃんねる掲示板の普通な検索
'; //print "
$ADURL
\n\n$ADTXT\n\n
$ADbuff"; //print "$TOTAL : $pagenum"; //////検索用語カウンター if($query != ""){ $today = date("d"); $yesterday = date("d")-1; $yesterday = sprintf("%02d", $yesterday); if(!file_exists("data/$query-$today.dat")){ $rcd = rename("data/$query-$yesterday.dat", "old/$query-old.dat"); } if($fileornot = fopen("data/$query-$today.dat", "ab")){ fwrite($fileornot, "a", 1); fclose($fileornot); } } if ($query != ""){ $handle = fopen ("latest.dat", "r"); for ($i = 1; $i <= $max; $i++) { $latest[$i] = fgets($handle, 128); //print $latest[$i]; } fclose ($handle); $today = date("H:i:s"); if ($TOTAL == ""){$TOTAL = 0;} $randnum = rand(1,100000); $tempfile = fopen ("$randnum.dat", "w"); fwrite ($tempfile, "$query<>($TOTAL ヒット) $ADlen 点 $today \n", 128); for ($i = 1; $i <= $max; $i++) { fwrite($tempfile, "$latest[$i]", 128); //print $latest[$i]; } fclose ($tempfile); rename("$randnum.dat", "latest.dat"); } //////////////////////////////////////// function characters($parser, $text){ global $TMP; $TMP = $text; } function startElement($parser, $name, $attrs){ } function endElement($parser, $name){ global $TMP, $URL, $DISPLAY_URL, $PARENTTITLE, $TOTAL, $ADTXT, $TITLE, $DESCRIPTION, $query, $P_GET, $ADlen; global $depth; $depth[$parser]--; //print "$name > ${TMP}
\n"; switch($name){ case 'C': break; case 'Q': print ""; print '
今日の検索語ランキング 他の人が検索した言葉
'; break; case 'MSG': print '
'; ${TMP} = str_replace(array('<','>'), '', ${TMP}); print "

${TMP}を検索しました。

"; print '
'; break; case 'TOTAL': case 'TOTAL': if (${TMP}){ $TOTAL = ${TMP}; }else{ $ADTXT = 'ご希望のページは見つかりませんでした。'; } break; case 'RPP': $void = 1; $quelen = strlen($query); if($quelen < 3){$void = 0;} if($TOTAL > 200000){$void = 0;} $ADlen = (0.1*(strlen($ADTXT)) + 0.2*($TOTAL))* $void + 2.7 * $quelen ; print $ADlen . '点 '; if($TOTAL > ${TMP}){ $count = ($P_GET + ${TMP}) -1; if($count >= $TOTAL){$count = $TOTAL;} print "$TOTAL 件中 $P_GET - $count 件表示"; }else{ print "$TOTAL 件中 $TOTAL 件表示"; } print '
'; print '
'; print $ADTXT; break; case 'PAGE': break; case 'KEYWORD': break; case 'CL': break; case 'CT': break; case 'FC': break; case 'ND': break; case 'LC': break; case 'CD': break; case 'IE': break; case 'OE': break; case 'F': break; case 'FLC': break; case 'CC': break; case 'QUERY': break; case 'P': break; case 'M': break; case 'URL': $URL = ${TMP}; break; case 'DISPLAY_URL': $DISPLAY_URL = ${TMP}; break; case 'TITLE': //print "
${TMP} $PARENTTITLE
"; $TITLE = ${TMP}; break; case 'DESCRIPTION': $DESCRIPTION = "
${TMP}
$DISPLAY_URL
"; break; case 'PARENTTITLE': //$PARENTTITLE = ${TMP}; print "
$TITLE ${TMP}
$DESCRIPTION"; break; case 'PRODUCT_TYPE': break; case 'PARENTID': break; case 'ROW': break; case 'RESULTS': break; case 'SEARCH': break; default: print "$name > ${TMP}
"; } } function endADElement($parser, $name){ global $TMP, $URL, $DISPLAY_URL, $PARENTTITLE, $ADTXT; global $depth; $depth[$parser]--; //print "$name > ${TMP}
\n"; switch($name){ case 'C': break; case 'Q': break; case 'MSG': break; case 'TOTAL': if (${TMP}){ $ADTXT .= '
[スポンサードリンク]
'; } break; break; case 'RPP': break; case 'PAGE': break; case 'KEYWORD': break; case 'CL': break; case 'CT': break; case 'FC': break; case 'ND': break; case 'LC': break; case 'CD': break; case 'IE': break; case 'OE': break; case 'F': break; case 'FLC': break; case 'CC': break; case 'QUERY': break; case 'P': break; case 'M': break; case 'URL': $URL = ${TMP}; break; case 'DISPLAY_URL': $DISPLAY_URL = ${TMP}; break; case 'TITLE': $ADTXT .= '
'; $ADTXT .= "${TMP}
"; break; case 'DESCRIPTION': $ADTXT .= "${TMP}
$DISPLAY_URL


"; break; case 'PARENTTITLE': //$PARENTTITLE = ${TMP}; break; case 'PRODUCT_TYPE': break; case 'PARENTID': break; case 'ROW': break; case 'RESULTS': break; case 'SEARCH': break; case 'CLIENTNAME': break; case 'FEATUREDRESULTS': break; case 'HOSTCL': break; default: print "$name > ${TMP}
"; } } ?>