Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan PHP untuk membangunkan teg pengguna dan fungsi keutamaan minat dalam tapak web soalan dan jawapan pengetahuan.

Gunakan PHP untuk membangunkan teg pengguna dan fungsi keutamaan minat dalam tapak web soalan dan jawapan pengetahuan.

王林
王林asal
2023-07-02 17:36:071104semak imbas

Gunakan PHP untuk membangunkan teg pengguna dan fungsi keutamaan minat dalam laman web soal jawab pengetahuan

Dalam laman web soal jawab pengetahuan, tag pengguna dan fungsi keutamaan minat adalah sangat penting. Mereka boleh membantu tapak web lebih memahami minat dan keperluan pengguna, dengan itu memberikan pengesyoran yang lebih diperibadikan dan tepat. Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan teg pengguna dan fungsi keutamaan minat dalam tapak web soal jawab pengetahuan.

Pertama, kita perlu mencipta pangkalan data untuk menyimpan teg pengguna dan maklumat keutamaan minat. Kami boleh menggunakan pangkalan data MySQL dan mencipta jadual bernama "pengguna" untuk menyimpan maklumat pengguna, termasuk medan seperti ID pengguna, nama pengguna dan kata laluan. Selain itu, kita juga perlu mencipta jadual bernama "tag" untuk menyimpan maklumat teg, termasuk medan seperti ID teg dan nama teg. Akhir sekali, kami mencipta jadual bernama "user_tags" untuk mewujudkan perkaitan antara pengguna dan teg, termasuk medan seperti ID pengguna dan ID teg.

Seterusnya, kita perlu menambah fungsi pemilihan teg dan keutamaan minat pada fungsi pendaftaran dan log masuk. Apabila pengguna mendaftar, kami boleh meminta mereka memilih tag yang mereka minati. Selepas pengguna log masuk, kami boleh memaparkan teg yang telah dipilih oleh pengguna dan membenarkan pengguna mengubah suai atau menambah teg baharu.

Berikut ialah contoh kod untuk memilih tag dan keutamaan minat apabila pengguna mendaftar:

<!DOCTYPE html>
<html>
<head>
    <title>用户注册</title>
</head>
<body>
    <h2>用户注册</h2>
    <form action="register.php" method="post">
        <label for="username">用户名:</label>
        <input type="text" name="username" id="username" required><br><br>
        <label for="password">密码:</label>
        <input type="password" name="password" id="password" required><br><br>
        <label for="interests[]">兴趣偏好:</label><br>
        <?php
            // 获取数据库中的标签信息
            $sql = "SELECT * FROM tags";
            $result = mysqli_query($conn, $sql);

            // 显示标签选项
            while ($row = mysqli_fetch_assoc($result)) {
                echo '<input type="checkbox" name="interests[]" value="' . $row['tag_id'] . '">' . $row['tag_name'] . '<br>';
            }
        ?>
        <br>
        <input type="submit" value="注册">
    </form>
</body>
</html>

Selepas pengguna mendaftar dan menyerahkan borang, kami boleh menyimpan maklumat tag yang dipilih oleh pengguna ke dalam jadual "user_tags" dalam pangkalan data . Berikut ialah contoh kod untuk memproses maklumat pendaftaran pengguna dan menyimpan maklumat teg yang dipilih pengguna:

<?php
    // 获取用户注册信息
    $username = $_POST['username'];
    $password = $_POST['password'];
    $interests = $_POST['interests'];

    // 将用户注册信息插入数据库中的 "users" 表(省略部分代码)

    // 获取最新插入的用户ID
    $user_id = mysqli_insert_id($conn);

    // 将用户选择的标签插入数据库中的 "user_tags" 表
    foreach ($interests as $tag_id) {
        $sql = "INSERT INTO user_tags (user_id, tag_id) VALUES ('" . $user_id . "', '" . $tag_id . "')";
        mysqli_query($conn, $sql);
    }

    // 注册成功后的页面跳转(省略部分代码)
?>

Selain menggunakan tag pengguna dan fungsi keutamaan minat dalam fungsi pendaftaran, kami juga boleh memaparkan pilihan pilihan pengguna pada halaman utama selepas log masuk pengguna teg, dan berikan soalan dan cadangan artikel yang berkaitan berdasarkan teg ini. Berikut ialah contoh kod untuk memaparkan teg dan soalan atau artikel yang disyorkan yang telah dipilih oleh pengguna:

<!DOCTYPE html>
<html>
<head>
    <title>用户首页</title>
</head>
<body>
    <h2>用户首页</h2>
    <?php
        // 获取用户已选择的标签
        $user_id = $_SESSION['user_id']; // 获取当前用户ID
        $sql = "SELECT t.tag_name FROM tags AS t INNER JOIN user_tags AS ut ON t.tag_id = ut.tag_id WHERE ut.user_id = '" . $user_id . "'";
        $result = mysqli_query($conn, $sql);

        // 显示用户已选择的标签
        echo '<p>您的兴趣爱好:</p>';
        while ($row = mysqli_fetch_assoc($result)) {
            echo $row['tag_name'] . ', ';
        }

        // 显示根据用户标签推荐的问题或文章(省略部分代码)
    ?>
</body>
</html>

Dengan contoh kod di atas, kami boleh melaksanakan teg pengguna dan fungsi keutamaan minat dalam tapak web soalan dan jawapan pengetahuan. Apabila pengguna mendaftar, mereka boleh memilih teg yang mereka minati dan mempunyai soalan berkaitan atau cadangan artikel dipaparkan pada halaman utama. Dengan cara ini, pengguna boleh menyemak imbas dan mengambil bahagian dalam kandungan yang diminati dengan lebih baik, meningkatkan pengalaman pengguna dan kepuasan pengguna.

Atas ialah kandungan terperinci Gunakan PHP untuk membangunkan teg pengguna dan fungsi keutamaan minat dalam tapak web soalan dan jawapan pengetahuan.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn