Maison  >  Article  >  développement back-end  >  Utilisez PHP pour développer des balises utilisateur et des fonctions de préférence d'intérêt dans le site Web de questions et réponses de connaissances.

Utilisez PHP pour développer des balises utilisateur et des fonctions de préférence d'intérêt dans le site Web de questions et réponses de connaissances.

王林
王林original
2023-07-02 17:36:071103parcourir

Utilisez PHP pour développer des balises utilisateur et des fonctions de préférence d'intérêt dans le site Web de questions et réponses de connaissances

Dans le site Web de questions et réponses de connaissances, les balises utilisateur et les fonctions de préférence d'intérêt sont très importantes. Ils peuvent aider les sites Web à mieux comprendre les intérêts et les besoins des utilisateurs, fournissant ainsi des recommandations plus personnalisées et plus précises. Cet article explique comment utiliser PHP pour développer des balises utilisateur et des fonctions de préférence d'intérêt dans un site Web de questions et réponses de connaissances.

Tout d'abord, nous devons créer une base de données pour stocker les balises de l'utilisateur et les informations sur les préférences d'intérêt. Nous pouvons utiliser une base de données MySQL et créer une table nommée « utilisateurs » pour stocker les informations sur les utilisateurs, y compris des champs tels que l'ID utilisateur, le nom d'utilisateur et le mot de passe. De plus, nous devons également créer une table nommée « tags » pour stocker les informations sur les balises, y compris des champs tels que l'ID de balise et le nom de la balise. Enfin, nous créons une table nommée "user_tags" pour établir l'association entre les utilisateurs et les tags, comprenant des champs tels que l'ID utilisateur et l'ID du tag.

Ensuite, nous devons ajouter des fonctions de sélection de balises et de préférences d'intérêt aux fonctions d'inscription et de connexion. Lorsque les utilisateurs s'inscrivent, nous pouvons leur demander de sélectionner les tags qui les intéressent. Une fois l'utilisateur connecté, nous pouvons afficher les balises que l'utilisateur a sélectionnées et lui permettre de modifier ou d'ajouter de nouvelles balises.

Ce qui suit est un exemple de code pour sélectionner les balises et les préférences d'intérêt lorsqu'un utilisateur s'inscrit :

<!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>

Une fois que l'utilisateur s'est inscrit et a soumis le formulaire, nous pouvons stocker les informations de balise sélectionnées par l'utilisateur dans la table "user_tags" de la base de données. . Voici un exemple de code pour traiter les informations d'enregistrement de l'utilisateur et enregistrer les informations de balise sélectionnées par l'utilisateur :

<?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);
    }

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

En plus d'utiliser les balises utilisateur et les fonctions de préférence d'intérêt dans la fonction d'enregistrement, nous pouvons également afficher les choix sélectionnés par l'utilisateur sur la page d'accueil après le l'utilisateur se connecte aux balises et fournit des questions pertinentes et des recommandations d'articles basées sur ces balises. Voici un exemple de code pour afficher les balises et les questions ou articles recommandés que l'utilisateur a sélectionnés :

<!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>

Avec l'exemple de code ci-dessus, nous pouvons implémenter les balises utilisateur et les fonctions de préférence d'intérêt dans le site Web de questions et réponses de connaissances. Lorsque les utilisateurs s'inscrivent, ils peuvent sélectionner les balises qui les intéressent et afficher des questions connexes ou des recommandations d'articles sur la page d'accueil. De cette manière, les utilisateurs peuvent mieux parcourir et participer au contenu qui les intéresse, améliorant ainsi l'expérience et la satisfaction des utilisateurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn