php - 如何在 PHP 中构建推荐系统?

标签 php mysql hierarchy

我有一个带有推荐系统的网站,我希望用户能够使用 TreeView 查看他们推荐的用户。

我的数据库表是这样设置的,当用户用他的推荐代码推荐某人时, 新用户获得一个 ID、一个赞助商代码(来自他的“赞助商”的推荐代码,也就是把他带到这个网站的人)和一个推荐代码(他自己的推荐代码,让其他人加入他)。

我不知道如何从我的 MySQL 数据库中获取这些信息,并将其放入 TreeView 脚本中。

我需要能够让用户看到他推荐的所有人员,深度为 10 级。

这可能吗?我该怎么做?

最佳答案

您应该查看分层数据 (http://www.sitepoint.com/hierarchical-data-database/)

<?php

    function tree_view($index)
    {
        $q = mysql_query("SELECT * FROM table_name WHERE SCode=$index");
        if (!mysql_num_rows($q))
            return;
        echo '<ul>';
        while ($arr = mysql_fetch_assoc($q))
        {
            echo '<li>';
            echo $arr['UserID']; //you can add another output there 
            tree_view($arr['RCode']);
            echo '</li>';
        }
        echo '</ul>';
    }

    mysql_connect('localhost', 'root', '');
    $link = mysql_connect('localhost', 'root', '') or die('Could not connect: ' . mysql_error());
    mysql_select_db('test') or die('Could not select database');

    tree_view(11111);

关于php - 如何在 PHP 中构建推荐系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7149060/

相关文章:

php - 页面上的密码字段和 SSL 证书

php - 删除表 MYSQL 中除前 100 行以外的所有行

C# 到 MySQL 服务器的 SSH 隧道

mysql - 脚本卡住了。想要取1个月前到60个月前 "Women"的平均计数。这部分代码让我很困惑

php - 自动完成功能不适用于 mysql

mysql - SQL : How to select all parent nodes in Materialized path?

oop - 命名子类的最佳实践

sql - 使用 Oracle sql 根据父值更新子行

php - 通过我不太了解的 mysql 查询破坏了安全性

php - 我应该采用哪种模式来评论我的 php 代码?