【问题标题】:How to create search engine for a website?如何为网站创建搜索引擎?
【发布时间】:2018-02-24 06:26:30
【问题描述】:

我是前端开发人员,但从未接触过任何后端语言。所以现在我必须为我的客户创建一个网站。他们假设 Excel 文件中有 500 个项目的数据,每个项目有 10 个字段。现在他们想在他们的网站中创建一个搜索引擎,我们在其中搜索名称,并显示与该名称相关的所有信息。搜索应该只通过 1 个字段,即名称。有什么帮助吗? 即使我雇了人来帮助我,他/她应该知道哪些技术?

【问题讨论】:

标签: php mysql database indexing backend


【解决方案1】:

不要认为这是正确的做法。使用数据库将是一个好主意,但这是您可以解决此问题的方法。我认为将您的数据导入 html 表并执行以下操作。

function myFunction() {
  var input, filter, table, tr, td, i;
  input = document.getElementById("myInput");
  filter = input.value.toUpperCase();
  table = document.getElementById("myTable");
  tr = table.getElementsByTagName("tr");

  for (i = 0; i < tr.length; i++) {
    td = tr[i].getElementsByTagName("td")[0];
    if (td) {
      if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
        tr[i].style.display = "";
      } else {
        tr[i].style.display = "none";
      }
    } 
  }
}
#myInput {
    background-image: url('/css/searchicon.png'); 
    background-position: 10px 12px; 
    background-repeat: no-repeat;
    width: 100%;
    font-size: 16px;
    padding: 12px 20px 12px 40px; 
    border: 1px solid #ddd; 
    margin-bottom: 12px;
}

#myTable {
    border-collapse: collapse;
    width: 100%;
    border: 1px solid #ddd;
    font-size: 18px;
}

#myTable th, #myTable td {
    text-align: left;
    padding: 12px; 
}

#myTable tr {
    border-bottom: 1px solid #ddd; 
}

#myTable tr.header, #myTable tr:hover {
    background-color: #f1f1f1;
}
<input type="text" id="myInput" onkeyup="myFunction()" placeholder="Search for names..">

<table id="myTable">
  <tr class="header">
    <th style="width:60%;">Name</th>
    <th style="width:40%;">Country</th>
  </tr>
  <tr>
    <td>Garry</td>
    <td>Australia</td>
  </tr>
  <tr>
    <td>Ben Hopkins</td>
    <td>USA</td>
  </tr>
  <tr>
    <td>Deric</td>
    <td>UK</td>
  </tr>
  <tr>
    <td>Ollie</td>
    <td>Germany</td>
  </tr>
</table>

【讨论】:

  • 我还有 1 个问题,我不希望表格一直显示在这里。相反,我希望它被隐藏起来。那么我应该为表格添加“显示:隐藏”吗?
【解决方案2】:

首先,您需要在您的 PC 中安装一个 DBMS,然后根据需要在此处创建一个数据库。然后使用 PHP、C#、Java 等服务器端编程语言,现在您可以制作搜索引擎了。 如果您需要更多帮助,我会在这里为您提供更多帮助。谢谢

【讨论】:

    【解决方案3】:

    以下是圆顶台阶,可能对您有所帮助 1.您需要一个数据库以及插入到其中的所有数据以及特定字段。 2. 现在在前端你需要一个这样的from

    <form method="post" action="">
    <input type = text name="field_name_to_search">
    <input type = submit name = "submit" value="submit" >
    </form>
    

    3。为了显示搜索到的数据,您需要一个用于编写代码的文件的数据库连接。 4. 连接数据库后,需要用sql查询获取数据,并以需要的格式查看。查询可以是这样的

    <?php if(isset($_POST('submit'))){
    
        $sql = "select * from database_table WHERE field_name_to_search = 
            $_POST('field_name_to_search')";
    }
     ?>
    

    5。现在,您拥有了在变量 $sql 中搜索到的字段的所有数据。 6. 可以通过 print_r($sql) 函数查看数据。您拥有所有被搜索的数据,您可以使用 (for) 循环将其解析到您的 html 中。

    如果您聘请开发人员,只需向他展示此答案即可。我相信他会明白我的意思。

    【讨论】:

    • 请不要建议使用未经检查、未经消毒的输入变量——尤其是不要直接用于数据库/SQL 查询。这只是要求 SQL 注入以及其他安全问题。
    猜你喜欢
    • 2013-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-02
    • 2010-12-25
    • 1970-01-01
    • 2010-11-16
    • 2011-02-18
    相关资源
    最近更新 更多