Data design / presentation

How would you handle a situation like the network/affiliate type of business where each member can sign up another member ?
This causes each member to have 1 Upline and several Downlines. This is typical structure but I would like to know what are your suggestions in designing database, assigning relationships and especially showing this on the screen in readable format (possibly expandable tree)
I would like to have a structure which allows controlling members and of course showing the members in some kind of structural format.

EXAMPLE:

(uplineID=0) John (downlineID)
(uplineID) Mary (downlineID)
(uplineID) Tom (downlineID)
(uplineID) Greg (downlineID)
(uplineID) Alice (downlineID)

Converting this into numbers (or live data) will look like

(0) John (467)
(457) Mary (0)
(467) Tom (734)
(734) Greg (0)
(734) Alice (0)

John signed 2 people
Mary signed 0 people
Tom signed 2 people
Greg signed 0 people
Alice signed 0 people
etc…

Arthur

aka

I think you pretty much have already answered your own question (if I understand you correctly):

Need just one table - e.g. “users” with this structure…

…and showing some sample data…

Having an initial “special” user “0” ==> SELF, then the above shows:

  • Mary signed herself up, and signed up 2 users (Tom and Greg)
  • Greg signed up 1 user (Alice)
  • Tom has not signed anyone else up.
  • Eric signed himself up (and has not signed anyone else up as yet)

Capture.JPG

Capture2.JPG