謝謝.., 我想取(知道)的搜索關鍵字網址 例:在谷歌或冰等 假設。我們正在尋找一個關鍵詞, 它顯示結果,我的網址是第一位的, 如果用戶點擊了網址,它會來到我的網站。所以基本上我想,搜索(Google搜索)URL關於提前搜索關鍵字網址
請幫助我們
謝謝.., 我想取(知道)的搜索關鍵字網址 例:在谷歌或冰等 假設。我們正在尋找一個關鍵詞, 它顯示結果,我的網址是第一位的, 如果用戶點擊了網址,它會來到我的網站。所以基本上我想,搜索(Google搜索)URL關於提前搜索關鍵字網址
請幫助我們
您可以檢查Referer
頭。如果你從谷歌的搜索查詢的鏈接,它會是這個樣子:
http://www.google.es/search?client=safari&rls=en&q=query&ie=UTF-8&oe=UTF-8&redir_esc=&ei=ppvfTfy8F4axhAfX2unDCg
Q參數會告訴你的搜索詞。
Bing有一個非常類似的URL格式...查詢參數甚至被命名爲相同!
http://www.bing.com/search?q=query&go=&form=QBLH&filt=all&qs=n&sk=&sc=7-5
你必須檢查$_SERVER['HTTP_REFERER']
,但是知道它可能是空的(例如代理剝離它,谷歌SSL搜索等)。
檢查$_SERVER['HTTP_REFERER']
將顯示用戶來自搜索引擎結果頁面的URL,您必須解析它以提取關鍵字,如何執行取決於搜索引擎。
我希望獲取搜索到的URL。它想要存儲在我的數據庫與搜索關鍵字..如何做到這一點,請 – 2011-05-27 12:48:55
您可以使用HTTP_REFERER
:
<?php
echo $_SERVER['HTTP_REFERER'];
?>
這種可能,但是,是空的,由於代理,SSL或其他問題。
我想要抓取搜索到的網址。它想要在我的數據庫中存儲關鍵字搜索..如何做到這一點請 – 2011-05-27 12:49:00
你需要解析它,例如與'parse_url'。看到Wiz的答案。 – Sorrow 2011-05-27 12:53:23
你想要的是引用URL,你可以使用$_SERVER['HTTP_REFERER']
得到並解析出這個詞。
<?php
$url = $_SERVER['HTTP_REFERER'];
/* break the url down into its components */
$params = parse_url($url);
/* make sure its actually filled with something useful */
if (array_key_exists("host", $params))
{
/* parse the query params for easy keyword retrieval */
parse_str($params["query"], $query);
/* by search engine */
switch ($params["host"])
{
case "www.google.com":
echo "Google Search Term: " . $query["q"];
break;
case "www.bing.com":
echo "Bing Search Term: " . $query["q"];
break;
case "search.yahoo.com":
echo "Yahoo Search Term: " . $query["p"];
break;
/* more search engines here .... */
}
}
?>
應當注意的是,HTTP_REFERER不是100%可靠,因爲在客戶端(瀏覽器)實際上是不需要的,以提供其在請求中。此外,來自安全網址(例如encrypted.google.com)的網址也不會提供。
我想準確地獲取搜索到的URL。它想要存儲在我的數據庫中 – 2011-05-27 12:46:21