作为php的新手和搜索引擎拥有者,我会经历很多令人头疼的事情。我想创建自己的搜索引擎。我正在尝试用PHP和MYSQL创建一个最初编码的测试版,但最终我想学习C++,这样我就可以创建我自己的表格/搜索系统,就像谷歌的Bigtable一样。我的代码应该在这篇文章的某个地方。有人能帮我写代码吗?
The "PAGE" that does all the work
<?php
$query = $_GET['S'];
$con = mysql_connect("localhost","
每个搜索查询都保存在我的数据库中,但是我想限制一个单词的字符长度: odisafuoiwerjsdkle --> length too word-> to write in the database
我的实际代码是:
$search = $_GET['q'];
if (!($sql = mysql_query ('' . 'SELECT * FROM `history` WHERE `Query`=\'' . $search . '\''))) {
exit ('
在我的Mysql DB中,我有一个术语列表,比如(第一个字母是大写的,大多数时候是复数)
Hairdressers
Restaurants
Beauty Salons
Fournitures For Restaurants
在我的网站上,我有一个搜索栏,用户可以在其中搜索这些单词(我的网站是一种POI查找器)。但是我的查询有问题。
SELECT * FROM TABLE WHERE word = 'userword'
1:如果用户进入餐馆,它不起作用,因为他把'r‘放在小写。2:如果用户进入餐厅,因为他没有使用复数形式
我尝试过使用SELECT * FROM TABL
我想创建一个搜索框,而不是在查询中使用where cluse来匹配字段中的确切短语,而是希望搜索框能够执行语义搜索,以便当用户输入短语的一部分时,它会显示能够匹配短语含义的适当结果。当你尝试通过谷歌进行搜索时,谷歌到底是如何工作的。这有可能实现吗?有人有什么想法吗?
下面是我目前使用的代码,以便能够使用数据库查看行是否与在搜索框中输入的短语完全匹配:
<?php
//connected to DB
foreach (array('questioncontent') as $varname) {
$questio
假设我想植入一个搜索引擎,让用户进入LIKE是危险的。例如:
SELECT user FROM table WHERE user LIKE "[user input]"
在这种情况下,我假设用户可以输入诸如%、_等字符。我们还假定正确地转义注入字符,如"、'、
如果数据库包含大量用户,我正在考虑可能的Mysql。还有其他(S)风险吗?
我正在使用MySQL全文搜索,但在字段中字符串是单词的一部分的情况下,我发现它缺少它。如果我的字段是"New York Times“,而我搜索"Time”,则得不到任何结果。解决此问题的黑客方法是设置两个查询,一个执行全文搜索,另一个执行:
SELECT * FROM ___ WHERE 'string' LIKE %searchterm%
有没有什么方法可以设置全文搜索来解决这个问题,这样我就不必运行额外的查询了?
我在我的数据库中有一个消息字段,我想在用户的消息中以最快的方式搜索特定的字符串。由于用户收到了许多消息,因此该过程可能会很慢。这是我到目前为止得到的sql查询:
$result=mysql_query("
SELECT message_content
FROM `messages` AS ms
INNER JOIN users1 AS us ON us.user_id=ms.user_id
WHERE us.user_id=".$user_id." AND message_content