ホームページ  >  記事  >  バックエンド開発  >  PHP は、知識の質問と回答の Web サイトに質問タグの統計と検索機能を実装します。

PHP は、知識の質問と回答の Web サイトに質問タグの統計と検索機能を実装します。

WBOY
WBOYオリジナル
2023-07-01 22:28:351389ブラウズ

PHP は、ナレッジ Q&A Web サイトに質問ラベルの統計と検索機能を実装します。

ナレッジ Q&A Web サイトでは、質問ラベルは、ユーザーが関連する質問をすばやく見つけるのに役立つ重要な識別子です。この記事では、PHP を使用して簡単な知識の質問と回答の Web サイトを実装し、質問タグの統計と検索機能を追加します。

まず、問題情報を保存するデータベース テーブルを作成する必要があります。次の SQL ステートメントを使用して、「questions」という名前のテーブルを作成できます:

CREATE TABLE `questions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `content` text NOT NULL,
  `tags` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

このテーブルには次のフィールドが含まれます:

  • id: 固有の質問ID。自己増加する整数型を使用します。
  • title: 文字列タイプを使用した質問のタイトル。
  • content: テキスト タイプを使用した質問の内容。
  • tags: 質問のタグ。複数のタグはカンマで区切られ、文字列タイプを使用します。

次に、問題のタグ統計と検索機能を処理するための PHP ファイルを作成する必要があります。 PHP ファイルの名前が "question_search.php" であるとします。ファイルの内容は次のとおりです:

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

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

// 统计问题标签
$sql = "SELECT tags, COUNT(*) as count FROM questions GROUP BY tags";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        echo "标签:" . $row["tags"] . ",问题数量:" . $row["count"] . "<br>";
    }
} else {
    echo "暂无标签";
}

// 搜索问题
$search = $_GET["search"] ?? "";
if ($search !== "") {
    $search = mysqli_real_escape_string($conn, $search);
    $sql = "SELECT * FROM questions WHERE title LIKE '%$search%' OR content LIKE '%$search%'";
    $result = $conn->query($sql);
    if ($result->num_rows > 0) {
        while ($row = $result->fetch_assoc()) {
            echo "标题:" . $row["title"] . "<br>内容:" . $row["content"] . "<br>标签:" . $row["tags"] . "<br><br>";
        }
    } else {
        echo "暂无搜索结果";
    }
}

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

上記のコードの機能は次のとおりです:

  1. 接続先データベース: 独自のデータベース情報に基づくデータベース接続の構成。
  2. 質問ラベルのカウント: SQL クエリ ステートメントを使用して、質問テーブル内の各ラベルの数をカウントし、結果を出力します。
  3. 質問の検索: GET リクエストを通じてユーザーから渡された検索キーワードを取得し、SQL クエリ ステートメントを使用してタイトルと内容にキーワードを含む質問を検索し、結果を出力します。

知識問答サイトのフロントエンドページでは、このPHPファイルを導入することで質問タグの統計や検索機能を実装することができます。フロントエンド コードの例を次に示します。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>知识问答网站</title>
</head>
<body>
    <h1>知识问答网站</h1>

    <h2>问题标签统计</h2>
    <?php include("question_search.php"); ?>

    <h2>搜索问题</h2>
    <form action="question_search.php" method="get">
        <input type="text" name="search" placeholder="请输入关键词">
        <button type="submit">搜索</button>
    </form>
</body>
</html>

「question_search.php」ファイルを導入すると、ページに質問タグの統計と検索ボックスが表示されます。ユーザーがキーワードを入力して検索ボタンをクリックすると、検索結果がページに表示されます。

上記のコード例を通じて、簡単な知識の質問と回答の Web サイトに質問タグの統計と検索機能を実装することに成功しました。実際のニーズに応じて適切な調整や拡張を行い、より多くの機能要件を満たすことができます。

以上がPHP は、知識の質問と回答の Web サイトに質問タグの統計と検索機能を実装します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。