的問題可能會有點混亂,所以這裏就是我:PHP中,如何從URL中獲取關鍵字?
我在數據庫中插入,當一個人從像tihs傳來一個鏈接:
$came_from = $_SERVER['HTTP_REFERER']; // get previous link
如果鏈接從谷歌.COM它會是這樣的:
http://www.google.com/#sclient=psy&hl=en&source=hp&q=this+is+a+test&pbx=1&oq=this+is+a+teat&aq=f&aqi=g-s1g-v1&aql=1&gs_sm=s&gs_upl=887l82702l3.10.3.1l17l0&bav=on.2,or.r_gc.r_pw.r_cp.&fp=c3d3303&biw=1920&bih=995
如果我們看一下里面我們可以發現q=this+is+a+test
爲beeing我搜索的關鍵字。
我的問題是我如何創建一個查詢返回http://www.google.com/ | this+is+a+test
?
我知道這些關鍵字之間有+
登錄。
到目前爲止,我想出了這個,但不正是我想要的:
SELECT SUBSTRING_INDEX (table, '+', 1), table FROM table.table WHERE table LIKE '%+%' LIMIT 20
什麼想法?
感謝
編輯:發生了什麼是,有時我得到一些其他URL的沒有q=
但也許seearch=
,所以我要跟蹤+
標誌
我用你的方法看到的第一個問題是,如果搜索字符串是單個單詞,它將失敗。順便說一句,你如何計劃得到它而不依靠'q ='? – NullUserException
我仍然不明白爲什麼你不會使用像Regexp這樣的東西,這樣你可以同時查找'q ='和'seearch ='以及其他你需要的鍵 –