2012-04-03 106 views
0

我正在尋找一種搜索引擎,可以搜索MySQL數據庫並以類似的方式返回搜索結果。對於什麼樣的例子中,我找了你可以檢查出搜索私人數據庫的自定義搜索引擎

http://historio.ushttp://saveandsearch.com/

這兩個應用程序讓你的網站保存到自己的個人數據庫,然後通過他們以後搜索。它就像一個個人Google搜索引擎,您只需填寫您喜歡的網站即可。因此,不是搜索整個網站,而只是搜索您添加到其數據庫的網站。

是否有某種開源搜索引擎可以作爲起點?

+0

有很多全文,數據庫存儲的數據相關的搜索引擎。由於有很多,這取決於你*特別需要的東西。您提供的示例非常廣泛,我建議您從帶有WHERE子句的簡單MYSQL SQL查詢開始。 – hakre 2012-04-03 06:53:28

+0

這是與您的查詢:http://stackoverflow.com/questions/4309325/php-mysql-search-for-the-website – 2012-04-03 06:54:13

回答

0

您在這裏找的搜索引擎僅僅是數據庫。您將數據插入數據庫,然後通過用戶名和關鍵字進行搜索。沒有比這更復雜的了。

我給你一個例子(只是一些指針,SQL的)。用戶登錄到你的系統,並得到用戶名7,然後他進入新的網站「www.newsite.com」,你輸入到你的數據庫。

insert into sites (id,sitename) values (site_new_id, 'www.newsite.com'); 
insert into user_sites(userid,siteid) values (7,site_new_id); 

現在接下來的難題,你需要知道什麼是網站的關鍵字。在那裏你必須做一些研究,如何做,也許有人知道現成的模塊(也許這就是你實際要求的)。以某種方式檢查關鍵字(使用cURL或其他)。將這些關鍵字記錄到表中,並將這些關鍵字鏈接到網站。

insert into keywords(id,keyword) values (keyword_new_id,'awesome'); 
insert into keywords(id,keyword) values (keyword_new_id2,'software'); 
insert into keywords(id,keyword) values (keyword_new_id3,'here'); 

insert into site_keywords(siteid,keywordid) values (site_new_id,keyword_new_id); 
... etc 

現在用戶再次登錄並搜索關鍵字'真棒'。你做你的查詢:

SELECT sitename 
    FROM sites s, keywords k, site_keywords sk, user u 
WHERE k.keyword = 'awesome' AND k.id=sk.keywordid AND sk.siteid=s.id 
    AND u.site_id = s.id AND u.id = 7 

就是這樣的。現在想起來了,你問這個引擎的源代碼,我不知道,呃,對不起。但你可以使用這些技巧來構建你自己的一個:/

+0

是的,但我可以用什麼來搜索它? – Nick 2012-04-03 07:15:41

+0

我給了你一個例子,但對你原來的問題,我不知道這種應用程序的任何來源,對不起。 – raPHPid 2012-04-03 09:14:50