Moin
Ich stehe gerade vor einem Brainstorm, aber einem gigantischen
Ich bin gerade dabei, ein Downline/Referal-System zu bauen, welches nur 1 SQL-Query benötigt, ganz egal wie viele Referal-Ebenen es gibt. Mit nur 1 SQL-Query habe ich ja alle Datensätze, die ich brauche, der Rest sollte mit PHP gemacht werden.
Solche System gibt es zwar wie Sand am Meer, diese sind aber mehr als nur laienhaft Entwickelt und verursachen bei (zb. 10 Ebenen) eine nicht zu unterschätzende Last am Server (teilweise bis zum Timeout und kompletter Seiten-Stillstand).
Es sollten am Anfang nur Daten aus der Datenbank geholt, die größer als die eigene User-ID sind, aber beim Kauf eines Referals mit kleinerer ID würde das ganze System nicht mehr funktionieren, deshalb wird leider alles ausgelesen.
Und das Feld "uid_ref" ist Unique,- User 12 kann ja nicht von 2 verschiedenen anderen Usern geworben werden
Meine Datenbank sieht so aus:
uid => user-id des Users (In diesem Fall 3)
uid_ref => user-id des Users, welcher geworben wurde
User 3 hat also User 4,5 geworben, User 4 hat 7,8 geworben und User 8 hat 10 geworben, macht zusammen 3 Referal-Ebenen (2 in der 1. Ebene, 2 in der 2. Ebene und 1 in der 3. Ebene),- eingestellt sind 4 Ebenen, die 4. Ebene ist also beim User 3 leer.
Weiß jemand, ob so etwas überhaupt geht? Ich habe Ebene 1 und 2 sauber als HTML-Ausgabe, aber Ebene 3 und 4 spinnen.
Wäre da Nested Trees mit MySQL Sinnvoller als es im PHP zu machen?
Ich stehe gerade vor einem Brainstorm, aber einem gigantischen
Ich bin gerade dabei, ein Downline/Referal-System zu bauen, welches nur 1 SQL-Query benötigt, ganz egal wie viele Referal-Ebenen es gibt. Mit nur 1 SQL-Query habe ich ja alle Datensätze, die ich brauche, der Rest sollte mit PHP gemacht werden.
Solche System gibt es zwar wie Sand am Meer, diese sind aber mehr als nur laienhaft Entwickelt und verursachen bei (zb. 10 Ebenen) eine nicht zu unterschätzende Last am Server (teilweise bis zum Timeout und kompletter Seiten-Stillstand).
Es sollten am Anfang nur Daten aus der Datenbank geholt, die größer als die eigene User-ID sind, aber beim Kauf eines Referals mit kleinerer ID würde das ganze System nicht mehr funktionieren, deshalb wird leider alles ausgelesen.
Und das Feld "uid_ref" ist Unique,- User 12 kann ja nicht von 2 verschiedenen anderen Usern geworben werden
Meine Datenbank sieht so aus:
uid => user-id des Users (In diesem Fall 3)
uid_ref => user-id des Users, welcher geworben wurde
Code:
INSERT INTO `downline` (`uid`, `uid_ref`) VALUES
(3, 4),
(3, 5),
(4, 7),
(4, 8),
(6, 9),
(8, 10);
User 3 hat also User 4,5 geworben, User 4 hat 7,8 geworben und User 8 hat 10 geworben, macht zusammen 3 Referal-Ebenen (2 in der 1. Ebene, 2 in der 2. Ebene und 1 in der 3. Ebene),- eingestellt sind 4 Ebenen, die 4. Ebene ist also beim User 3 leer.
Weiß jemand, ob so etwas überhaupt geht? Ich habe Ebene 1 und 2 sauber als HTML-Ausgabe, aber Ebene 3 und 4 spinnen.
Wäre da Nested Trees mit MySQL Sinnvoller als es im PHP zu machen?