-
-
//검색 엔진에서 인바운드 키워드 가져오기 - //by bbs.it-home .org
- 함수 get_keyword($url,$kw_start)
- {
- $start=stripos($url,$kw_start)
- $url=substr($url,$start strlen($kw_start )) ;
- $start=stripos($url,'&');
- if ($start>0)
- {
- $start=stripos($url,'&'); $s_s_keyword=substr($url,0,$start);
- }
- else
- {
- $s_s_keyword=substr($url,0);
- }
- return $s_s_keyword ;
- }
$url=isset($_SERVER['HTTP_REFERER'])?$_SERVER['HTTP_REFERER']:'';//인바운드 URL을 가져옵니다.
- $search_1="google.com"; //q= utf8
- $search_2="baidu.com"; //wd= gbk
- $search_3="yahoo.cn" //q= utf8
- $search_4="sogou.com"; //쿼리= gbk
- $search_5="soso.com"; //w= gbk
- $search_6="bing.com" //q = utf8
- $search_7="youdao.com"; //q= utf8
$google=preg_match("/b{$search_1}b/",$url); //인바운드 판정을 위한 매칭상황을 기록한다.
- $baidu=preg_match("/b{$search_2}b/",$url)
- $yahoo=preg_match("/b{$search_3}b/",$url)
- $ sogou=preg_match("/b{$search_4}b/",$url);
- $soso=preg_match("/b{$search_5}b/",$url)
- $bing=preg_match( "/b{$search_6}b/",$url);
- $youdao=preg_match("/b{$search_7}b/",$url)
- $s_s_keyword=""; $bul=$_SERVER['HTTP_REFERER'];
- //매개변수 없이 도메인 이름 가져오기
- preg_match('@^(?:http://)?([^/] )@i',$ bul, $matches);
- $burl=$matches[1];
- //도메인 이름 설정
- $curl="bbs.it-home.org"
- if($burl !=$ 컬){
- if ($google)
- {//Google에서
- $s_s_keyword=get_keyword($url,'q=');//키워드 앞의 문자는 "q= ".
- $s_s_keyword=urldecode($s_s_keyword);
- $urlname="Google:";
- $_SESSION["urlname"]=$urlname; ;
- //$s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk입니다
- }
- else if($baidu)
- {// Baidu에서
- $s_s_keyword=get_keyword($url,'wd=');//키워드 앞의 문자는 "wd="입니다.
- $s_s_keyword=urldecode($s_s_keyword);
- $s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk입니다.
- $urlname="Baidu:" ;
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword
- }
- else if($yahoo)
- {//출처:
- $s_s_keyword=get_keyword($url,'q=');//키워드 앞의 문자는 "q="입니다.
- $s_s_keyword=urldecode($s_s_keyword);
- //$s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk
- $urlname="Yahoo : ";
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword;
- }
- else if($sogou)
- {// from Sogou
- $s_s_keyword=get_keyword($url,'query=');//키워드 앞의 문자는 "query="입니다.
- $s_s_keyword=urldecode($s_s_keyword);
- $s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk입니다.
- $urlname="Sogou:" ;
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword
- }
- else if($soso)
- {//from
- $s_s_keyword=get_keyword($url,'w=');//키워드 앞의 문자는 "w="입니다.
- $s_s_keyword=urldecode($s_s_keyword);
- $s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk입니다.
- $urlname="Soso:" ;
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword
- }
- else if($bing)
- {//bi
- $s_s_keyword=get_keyword($url,'q=');//키워드 앞의 문자는 "q="입니다.
- $s_s_keyword=urldecode($s_s_keyword);
- //$s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk
- $urlname="Bing :";
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword;
- }
- else if($youdao)
- {// Youdao에서
- $s_s_keyword=get_keyword($url,'q=');//키워드 앞의 문자는 "q="입니다.
- $s_s_keyword=urldecode($s_s_keyword);
- //$s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//엔진은 gbk
- $urlname="Youdao :";
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword;
- }
- else{
- $urlname=$burl;
- $s_s_keyword="";
- $_SESSION["urlname"]=$urlname;
- $_SESSION["s_s_keyword"]=$s_s_keyword;
- $s_urlname=$urlname; 🎜>$s_urlkey=$s_s_keyword;
- }
- else{
- $s_urlname=$_SESSION["urlname"]
- $s_urlkey=$_SESSION["s_s_keyword"]
- ?>
-
-
-
- 코드 복사
참고: 처리할 때 인코딩 문제를 처리해야 한다는 점을 기억하세요. 서로 다른 검색 엔진이 결과를 반환하므로 일부는 GBK일 수 있고 일부는 UTF-8 형식 콘텐츠일 수 있습니다.
기능 2, 이것도 좋은데 한번 해보세요.
코드는 다음과 같습니다:
-
-
- //검색엔진의 입력 키워드 가져오기
- $_SERVER['HTTP_REFERER']='http:/ / www.baidu.com/s?wd=http://bbs.it-home.org';
- echo save_www_iiwnet_com_keyword('http://www.baidu.com/s?wd=http://bbs .it-home.org','http://www.baidu.com/s?wd=http://bbs.it-home.org')
- function save_www_iiwnet_com_keyword($domain,$path){
- if(strpos($domain, 'google.com.tw')!==false && preg_match('/q=([^&]*)/i',$path,$regs)){
- $searchengine = 'GOOGLE TAIWAN';
- $keywords = urldecode($regs[1]) // Google 대만
- }
- if(strpos($domain,'google.cn')!= = false && preg_match('/q=([^&]*)/i',$path,$regs)){
- $searchengine = 'GOOGLE CHINA'
- $keywords = urldecode($regs[ 1 ]); // 구글 중국
- }
- if(strpos($domain,'google.com')!==false && preg_match('/q=([^&]*)/i', $ path,$regs)){
- $searchengine = 'GOOGLE';
- $keywords = urldecode($regs[1]) // 구글
- }elseif(strpos($domain,'baidu. ' )!==false && preg_match('/wd=([^&]*)/i',$path,$regs)){
- $searchengine = 'BAIDU'
- $keywords = urldecode( $ regs[1]); // 바이두
- }elseif(strpos($domain,'baidu.')!==false && preg_match('/word=([^&]*)/i',$path , $regs)){
- $searchengine = 'BAIDU';
- $keywords = urldecode($regs[1]) // 바이두
- }elseif(strpos($domain,'114.vnet. cn ')!== false && preg_match('/kw=([^&]*)/i',$path,$regs)){
- $searchengine = 'CT114'
- $keywords = urldecode ( $regs[1]); // ct114
- }elseif(strpos($domain,'iask.com')!==false && preg_match('/k=([^&]*)/i', $ path,$regs)){
- $searchengine = 'IASK';
- $keywords = urldecode($regs[1]) // iask
- }elseif(strpos($domain,'soso. com ')!==false && preg_match('/w=([^&]*)/i',$path,$regs)){
- $searchengine = 'SOSO'
- $keywords = urldecode ( $regs[1]); // soso
- }elseif(strpos($domain, 'sogou.com')!==false && preg_match('/query=([^&]*)/i', $ path,$regs)){
- $searchengine = 'SOGOU';
- $keywords = urldecode($regs[1]) // sogou
- }elseif(strpos($domain,'so. 163 .com')!==false && preg_match('/q=([^&]*)/i',$path,$regs)){
- $searchengine = 'NETEASE'
- $keywords = urldecode($regs[1]); // netease
- }elseif(strpos($domain,'yodao.com')!== false && preg_match('/q=([^&]*)/i ' ,$path,$regs)){
- $searchengine = 'YODAO';
- $keywords = urldecode($regs[1]) // 요다오
- }elseif(strpos($domain,' zhongsou .com')!==false && preg_match('/word=([^&]*)/i',$path,$regs)){
- $searchengine = 'ZHONGSOU'
- $keywords = urldecode($regs[1]); // zhongsou
- }elseif(strpos($domain,'search.tom.com')!==false && preg_match('/w=([^&]*) / i',$path,$regs)){
- $searchengine = 'TOM';
- $keywords = urldecode($regs[1]) // 톰
- }elseif(strpos($domain) , 'live.com')!==false && preg_match('/q=([^&]*)/i',$path,$regs)){
- $searchengine = 'MSLIVE'
- $ 키워드 = urldecode($regs[1]); // MSLIVE
- }elseif(strpos($domain, 'tw.search.yahoo.com')!==false && preg_match('/p=([^ & ]*)/i',$path,$regs)){
- $searchengine = 'YAHOO TAIWAN'
- $keywords = urldecode($regs[1]) // yahoo taiwan
- } elseif (strpos($domain,'cn.yahoo.')!==false && preg_match('/p=([^&]*)/i',$path,$regs)){
- $searchengine = ' YAHOO CHINA'
- $keywords = urldecode($regs[1]); // 야후 중국
- }elseif(strpos($domain,'yahoo.')!==false && preg_match('/p = ([^&]*)/i',$path,$regs)){
- $searchengine = 'YAHOO'
- $keywords = urldecode($regs[1]); > }elseif(strpos($domain,'msn.com.tw')!==false && preg_match('/q=([^&]*)/i',$path,$regs)){
- $ searchengine = 'MSN TAIWAN';
- $keywords = urldecode($regs[1]); // msn taiwan
- }elseif(strpos($domain,'msn.com.cn')!==false && preg_match('/q=([^&]*)/i',$path,$regs)){
- $searchengine = 'MSN 중국'
- $keywords = urldecode($regs[1] ) ; // 중국 MSN
- }elseif(strpos($domain,'msn.com')!==false && preg_match('/q=([^&]*)/i',$path,$regs ) ){
- $searchengine = 'MSN';
- $keywords = urldecode($regs[1]); // msn
- }
- return $keywords; > ;
-
-
- 코드 복사
|