匹配文本与数据库中的数据?

时间:2010-02-13 09:37:33

标签: php html javascript

我是php,html和js的新手。我正在尝试使用php,html和js建立一个网站,我想要的是搜索。实际上我有一个存储视频名称及其URL的数据库,我希望将输入的文本与db中的视频名称相匹配。例如,如果有人在搜索文本框中输入arith,所有在其中包含arith字的名称应该像算术等一样进行搜索。我该怎么做?

3 个答案:

答案 0 :(得分:1)

假设您的数据库是MySQL,您正在寻找LIKE命令:http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html

您的查询类似于:

$res = mysql_query("SELECT id, name, url FROM videos WHERE name LIKE '%arith%'");

%字符是一个通配符模式匹配器,说“任何东西都可以在这里”。如果您想将开头与搜索词匹配,只需删除第一个通配符匹配器:

$res = mysql_query("SELECT id, name, url FROM videos WHERE name LIKE 'arith%'");

答案 1 :(得分:1)

如果您正在使用我认为的MySQL数据库,那么您可以从查看MySQL fulltext search开始。我从评论的例子开始,并从那里开发了我的全文搜索。

答案 2 :(得分:0)

你需要做的第一件事是告诉我们你正在使用什么数据库服务器,因为你正在使用PHP我猜你的网络托管是“LAMP”(Linux,Apache,MySql和PHP)所以这里有一些指向使用PHP的MySql教程的链接:

具体而言,您正在寻找在您的查询中使用的LIKE /%运算符,请查看:

PHP中的查询示例如下:

$matchingvidoes = mysql_query("SELECT `name`, `url` FROM `videos` WHERE `name` LIKE '%arith%'");