如何在PHP中构建引用系统?

时间:2011-08-22 14:34:20

标签: php mysql hierarchy

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

我的数据库表已设置好,以便当用户使用他的推荐代码引用某人时, 新用户获得一个ID,一个赞助商代码(来自他的“赞助者”的推荐代码,也就是让他进入这个网站的人)和一个推荐代码(他自己的推荐代码让其他人加入他的下面)。

我不知道如何从MySQL数据库中获取此信息,以及如何从树视图脚本中获取此信息。

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

这可能吗?我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

您应该查看分层数据(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);