Heim  >  Artikel  >  Backend-Entwicklung  >  Verwenden Sie PHP und Coreseek, um eine genaue Suchfunktion für medizinisches Wissen zu implementieren

Verwenden Sie PHP und Coreseek, um eine genaue Suchfunktion für medizinisches Wissen zu implementieren

PHPz
PHPzOriginal
2023-08-07 15:34:42699Durchsuche

Verwenden Sie PHP und Coreseek, um eine genaue Suchfunktion für medizinisches Wissen zu implementieren

Verwenden Sie PHP und Coreseek, um eine genaue Suchfunktion für medizinisches Wissen zu implementieren

Zusammenfassung: In diesem Artikel wird erläutert, wie Sie PHP und Coreseek-Suchmaschinen verwenden, um eine genaue Suchfunktion für medizinisches Wissen zu implementieren. Durch den Aufbau der Verwaltungsschnittstelle und der Suchschnittstelle sowie die Konfiguration von Coreseek können Entwickler problemlos ein effizientes und flexibles Suchsystem für medizinisches Wissen implementieren.

Schlüsselwörter: PHP, Coreseek, Suche nach medizinischem Wissen, Suchmaschine

Einleitung: Mit der rasanten Entwicklung des Internets wird auch die Nachfrage der Menschen nach medizinischem Wissen immer höher. Um den Bedürfnissen der Nutzer gerecht zu werden, hoffen wir, ein effizientes und flexibles Suchsystem für medizinisches Wissen zu entwickeln. Unter den vielen Suchmaschinen ist Coreseek eine sehr beliebte Wahl. In diesem Artikel wird erläutert, wie Sie mithilfe von PHP und Coreseek eine genaue Suchfunktion für medizinisches Wissen implementieren.

Teil Eins: Aufbau der Verwaltungsschnittstelle

Zuerst müssen wir eine Verwaltungsschnittstelle erstellen, damit Administratoren medizinische Wissensdaten einfach hinzufügen, bearbeiten und löschen können. Wir können PHP verwenden, um eine einfache Verwaltungsoberfläche zu entwickeln, die die folgenden Funktionen enthält:

  1. Medizinisches Wissen hinzufügen: Administratoren können den Titel, den Inhalt und andere Informationen des medizinischen Wissens zur Verwaltungsoberfläche hinzufügen.
  2. Medizinisches Wissen bearbeiten: Administratoren können vorhandenes medizinisches Wissen auf der Verwaltungsoberfläche bearbeiten.
  3. Medizinisches Wissen löschen: Administratoren können vorhandenes medizinisches Wissen auf der Verwaltungsoberfläche löschen.

Hier ist ein einfaches PHP-Codebeispiel zum Implementieren der oben genannten Funktion:

<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "medical_knowledge";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("连接失败:" . $conn->connect_error);
}

// 添加医疗知识
if (isset($_POST['add'])) {
    $title = $_POST['title'];
    $content = $_POST['content'];
    
    $sql = "INSERT INTO knowledge (title, content) VALUES ('$title', '$content')";
    if ($conn->query($sql) === TRUE) {
        echo "添加成功!";
    } else {
        echo "添加失败:" . $conn->error;
    }
}

// 编辑医疗知识
if (isset($_POST['edit'])) {
    $id = $_POST['id'];
    $title = $_POST['title'];
    $content = $_POST['content'];
    
    $sql = "UPDATE knowledge SET title='$title', content='$content' WHERE id=$id";
    if ($conn->query($sql) === TRUE) {
        echo "编辑成功!";
    } else {
        echo "编辑失败:" . $conn->error;
    }
}

// 删除医疗知识
if (isset($_GET['delete'])) {
    $id = $_GET['delete'];
    
    $sql = "DELETE FROM knowledge WHERE id=$id";
    if ($conn->query($sql) === TRUE) {
        echo "删除成功!";
    } else {
        echo "删除失败:" . $conn->error;
    }
}

// 查询医疗知识
$sql = "SELECT * FROM knowledge";
$result = $conn->query($sql);
?>

<!-- 管理界面 HTML -->
<!DOCTYPE html>
<html>
<head>
    <title>医疗知识管理</title>
</head>
<body>
    <h1>医疗知识管理</h1>

    <!-- 添加医疗知识表单 -->
    <h2>添加医疗知识</h2>
    <form action="" method="POST">
        标题:<input type="text" name="title"><br>
        内容:<textarea name="content"></textarea><br>
        <input type="submit" name="add" value="添加">
    </form>

    <!-- 编辑医疗知识表单 -->
    <h2>编辑医疗知识</h2>
    <form action="" method="POST">
        <?php while($row = $result->fetch_assoc()): ?>
        ID:<input type="text" name="id" value="<?php echo $row['id']; ?>"><br>
        标题:<input type="text" name="title" value="<?php echo $row['title']; ?>"><br>
        内容:<textarea name="content"><?php echo $row['content']; ?></textarea><br>
        <input type="submit" name="edit" value="编辑">
        <a href="?delete=<?php echo $row['id']; ?>">删除</a><br>
        <?php endwhile; ?>
    </form>
</body>
</html>

<?php
// 关闭数据库连接
$conn->close();
?>

Teil 2: Erstellen einer Suchoberfläche

Nachdem der Administrator das medizinische Wissen eingerichtet hat, müssen wir eine Suchoberfläche entwickeln, damit Benutzer Schlüsselwörter eingeben können um nach relevantem medizinischem Wissen zu suchen. Wir können PHP auch verwenden, um eine einfache Suchoberfläche zu entwickeln, die die folgenden Funktionen umfasst:

  1. Suche nach medizinischem Wissen: Benutzer können Schlüsselwörter in die Suchoberfläche eingeben und durch Klicken auf die Suchschaltfläche suchen.
  2. Suchergebnisse anzeigen: Die Suchergebnisse werden auf der Suchoberfläche in Form einer Liste angezeigt, einschließlich passender Titel und Inhalte.

Hier ist ein einfaches PHP-Codebeispiel zur Implementierung der oben genannten Funktionalität:

<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "medical_knowledge";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("连接失败:" . $conn->connect_error);
}

// 搜索医疗知识
if (isset($_GET['search'])) {
    $keyword = $_GET['keyword'];
    
    // 调用coreseek搜索引擎
    $searchCmd = "/usr/local/coreseek/bin/search -i index -c /usr/local/coreseek/etc/csft.conf -q "$keyword" -n 0,20";
    exec($searchCmd, $output);
    
    // 显示搜索结果
    echo "<h2>搜索结果</h2>";
    foreach ($output as $result) {
        $resultArray = explode("    ", $result);
        $title = $resultArray[0];
        $content = $resultArray[1];
        
        echo "<h3>$title</h3>";
        echo "<p>$content</p>";
    }
}
?>

<!-- 搜索界面 HTML -->
<!DOCTYPE html>
<html>
<head>
    <title>医疗知识搜索</title>
</head>
<body>
    <h1>医疗知识搜索</h1>

    <!-- 搜索表单 -->
    <form action="" method="GET">
        <input type="text" name="keyword">
        <input type="submit" name="search" value="搜索">
    </form>
</body>
</html>

<?php
// 关闭数据库连接
$conn->close();
?>

Teil 3: Coreseek konfigurieren

Damit Coreseek und PHP ordnungsgemäß funktionieren, müssen wir zunächst einige Konfigurationen vornehmen. Zuerst müssen wir die Konfigurationsdatei von coreseek erstellen /usr/local/coreseek/etc/csft.conf und den folgenden Inhalt in die Datei einfügen:

source medical_knowledge
{
    type                    = mysql
    sql_host                = localhost
    sql_user                = username
    sql_pass                = password
    sql_db                  = medical_knowledge
    sql_port                = 3306

    sql_query               = SELECT id, title, content FROM knowledge
    sql_attr_uint           = id
    sql_attr_str2ordinal    = title
    sql_attr_str2ordinal    = content
}

index index
{
    source                  = medical_knowledge
    path                    = /usr/local/coreseek/var/data/medical_knowledge
    min_word_len            = 1
    min_prefix_len          = 1
    enable_star             = 1
}

searchd
{
    listen                  = 9312
    log                     = /usr/local/coreseek/var/log/searchd.log
    query_log               = /usr/local/coreseek/var/log/query.log
    read_timeout            = 5
    max_children            = 30
    pid_file                = /usr/local/coreseek/var/log/searchd.pid
    seamless_rotate         = 0
    preopen_indexes         = 0
    unlink_old              = 1
}

Dann müssen wir einen Index für coreseek erstellen, um passende Suchen durchzuführen. Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:

$ /usr/local/coreseek/bin/indexer -c /usr/local/coreseek/etc/csft.conf --all

Zuletzt müssen wir den Suchdienst von coreseek starten. Führen Sie den folgenden Befehl im Terminal aus:

$ /usr/local/coreseek/bin/searchd -c /usr/local/coreseek/etc/csft.conf

Fazit: Durch die oben genannten Schritte haben wir erfolgreich eine genaue Suchfunktion für medizinisches Wissen mit PHP und Coreseek implementiert. Administratoren können über die Verwaltungsoberfläche medizinisches Wissen hinzufügen, bearbeiten und löschen und Benutzer können über die Suchoberfläche nach relevantem medizinischem Wissen suchen. Durch die Konfiguration der Indexierungs- und Suchdienste von coreseek haben wir ein effizientes und flexibles Suchsystem für medizinisches Wissen implementiert.

Das obige ist der detaillierte Inhalt vonVerwenden Sie PHP und Coreseek, um eine genaue Suchfunktion für medizinisches Wissen zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn