<?php include('positionSearch.php'); function fetchURL( $url ) { $host = $url_parsed["host"]; $port = $url_parsed["port"]; if ($port==0) $port = 80; $path = $url_parsed["path"]; if ($url_parsed["query"] != "") $path .= "?".$url_parsed["query"]; $out = "GET $path HTTP/1.0\r\nHost: $host\r\n\r\n"; $in .= $s; } return $in; } $mm[]=' '; $rr[]='+'; //$mm[]='ś'; $rr[]='%C5%9B'; $path='http://www.google.com/search?q='.$query. '&hl=pl&lr=&btnG=Szukaj&site=search&num=100'; $string=fetchURL($path); $t=positionSearch($string,$_GET['site']); ?>
No i wszystko ładnie działa, dopóki nie użyje polskiego znaku w $_GET['q']... Strona kodowana jest oczywiście w utf-8, dla zachowania zgodności z Google, ale to niestety nic nie daje.
Miał ktoś może już z czymś takim problem, lub może ktoś jest mi wstanie pomóc.
Przykład oparty na "śruby"
Próbowałem już takich rzeczy jak:
htmlentities($_GET['q'],1,'UTF-8');
str_replace('ś','%C5%9B',$_GET['q']);
mb_convert_variables('UTF-8',$ary,$_GET['q']); //$ary - tablica ze wszystkimi kodowaniami
mb_convert_variables('HTMLENTITIES',$ary,$_GET['q']);
Niestety w każdym przypadku jest to samo, czyli Google próbuje szukać albo "ruby" albo "Ĺ›ruby"
Proszę bardzo o pomoc.