Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 搜索私有数据库的自定义搜索引擎_Php_Html_Search_Search Engine - Fatal编程技术网

Php 搜索私有数据库的自定义搜索引擎

Php 搜索私有数据库的自定义搜索引擎,php,html,search,search-engine,Php,Html,Search,Search Engine,我正在寻找一个搜索引擎,可以通过MySQL数据库搜索,并返回类似于谷歌搜索结果。关于我正在寻找的示例,您可以查看 及 这两个应用程序都允许您将网站保存到自己的个人数据库中,然后在以后进行搜索。它就像一个个人谷歌搜索引擎,你可以填写只有你喜欢的网站。因此,它不是搜索整个网站,而是只搜索您添加到其数据库中的网站 是否有某种开源搜索引擎可以作为起点使用?您在这里查找的搜索引擎只是数据库。将数据插入数据库,然后按用户ID和关键字进行搜索。没有比这更复杂的了 我给你举个例子(只是一些指针,SQL)。用户登

我正在寻找一个搜索引擎,可以通过MySQL数据库搜索,并返回类似于谷歌搜索结果。关于我正在寻找的示例,您可以查看

这两个应用程序都允许您将网站保存到自己的个人数据库中,然后在以后进行搜索。它就像一个个人谷歌搜索引擎,你可以填写只有你喜欢的网站。因此,它不是搜索整个网站,而是只搜索您添加到其数据库中的网站


是否有某种开源搜索引擎可以作为起点使用?

您在这里查找的搜索引擎只是数据库。将数据插入数据库,然后按用户ID和关键字进行搜索。没有比这更复杂的了

我给你举个例子(只是一些指针,SQL)。用户登录到您的系统,并获得用户ID 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
现在,在用户再次登录并使用关键字“awesome”搜索之后。您可以执行以下查询:

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

差不多吧。现在我突然想到,你问了这样的引擎的来源,我不知道,呃,对不起。但是您可以使用以下技巧构建自己的搜索引擎://

有很多全文、数据库存储的数据相关搜索引擎。因为有很多,这在很大程度上取决于你具体需要什么。您给出的示例非常广泛,我建议您从带有
WHERE
子句的简单MYSQL SQL查询开始。它与您的查询相关:我给了您一个示例,但对于您最初的问题,我不知道此类应用程序的任何源代码,抱歉。