Moin,
also, du speicherst irgendwelche Startpunkt in einer extra-Tabelle weg. Welche sind das? Nur die (steht glaube ich in einem anderen Beitrag,oder?), die er durch einen Start der Seite erhält?
Falls ja, dann willst du dazu noch diese direkt, indirekt1-indirekt4-Punkte dazuhaben.
Das geht eigentlich auf dem Weg, wie wir es schon angefangen haben.
Falls du aber immer die aktuelle Gesamtzahl in dieser Starttabelle speichern willst, geht das so nicht mehr. Da weiß du ja nicht mehr, welche Punkte schon mal gezählt wurden. Da müßtest du dann anders vorgehen -> beim Anmelden oder Starten von ihm oder direkt/indirekts von ihm müssen die Punkte direkt in die Tabelle geschrieben werden.
Zweite Variante aufwendiger. Erste haben wir schon fast.
Was brauchst du davon? Oder habe ich dich total mißverstanden?
Select-Ausgabe aus einer Referrals-Tabelle
Collapse
X
-
Hi,
ich glaube meine Erklärung von heute Nachmittag war nicht so verständlich.
Antwort auf Deine Frage: ich gehe nur bis in 4 Ebenen tief. Bei mir gibt es nur Direkt1, Indirekt2, Indirekt3, Indirekt4.
Ich versuche es nochmal,
User X ist eingeloggt, er hat 500 Punkte auf seinem Konto
Er hat 2x Direkt1 (Y,Z), 2x Indirekt2 (A,B), 1x Indirekt3 (C), 2x Indirekt4 (D,E)
Y hat 50 Punkte, Z hat 35 Punkte - Direkt1
A hat 30 Punkte, B hat 25 Punkte - Indirekt2
C hat 10 Punkte - Indirekt3
D hat 55 Punkte, E hat 95 Punkte - Indirekt4
So, der X sieht nun in seiner Statistik
500 Punkte //Seine eigene
34 Punkte // von Direkt1 (gerechnet: (50+35):2,5 = 34)
11 Punkte // von Indirekt2 (gerechnet: (30+25):5 = 11)
2 Punkte // von Indirekt4 (gerechnet: (10):5 = 2)
30 Punkte // von Indirekt2 (gerechnet: (55+95):5 = 30)
Und dann ist schluß, es geht nur bis Indirekt4.
Was noch möglich wäre, daß wenn der Direkt1 seine Startseite aufruft, daß sofort bei X die Punkte in der Tabelle gutgeschrieben werden. Aber ich glaube das ist komplizierter.
Ich hoffe, daß es jetzt ein bißchen deutlicher wurde. :-)
Leave a comment:
-
Erstmal Hallo,
was wir gestern gemacht haben, war ja von User X die User (Direkt und Indirekt zu selectieren).
Das gleiche will ich jetzt mit den Paidstart-Punkten machen. Das heißt jeder User hat in meiner Tabelle: logfiles eine Anzahl von Punkten. Genauso wie wir gestern die (Direkt + Indirekt) Usern von X ausselectiert haben, selctieren wir jetzt die Punkten dieser (Direkt+Indirekt) Usern aus.
Der User X bekommt bei seinem Startaufruf 5 Punkte in der Tabelle: logfiles gutgeschrieben. Der User Y (Direkt1 von X) bekommt bei seinem Startaufruf auch 5 Punkte gutgeschrieben. Gleichzeitig bekommt der User X - 2 Punkte (da er ja Direkt1 von X ist) gutgeschrieben.
Da dachte ich an so etwas z.B.
//Das sind die Paidstart_Punkte des User X (der eingeloggt ist
$query="select * from logfiles where username='$PHP_AUTH_USER'";
$result=mysql_db_query("db",$query,$link);
$paidstart =mysql_result($result,0,"paidstart");
//Das sind die Paidstart_Punkte des User Y (Direkt1 von X)
$result1=mysql_query("select SUM(paidstart/2,50) from logfiles where username='$dir1'");
//$dir1 sind dann die User die wir ja gestern selectiert haben
$dir1=mysql_numrows($result1);
usw. bis zu Indirekt1.
Verstehts DU ????
Ist schwierig zu erklären. :-)
Leave a comment:
-
Leider kann ich dir heute morgen noch keine Antwort geben, da ich dein Ansinnen nicht ganz verstehe
Hab eigentlich alles verstanden... bis auf den großen Absatz.
Wieso in die Tiefe? WAS bedeutet denn das? WIESO enthält Direkt1 usw. nur einen Teil der Punkte?
Wenn du jetzt User X hast und schaust, wer X als sein Direkteintrag hat und da dann wiederum alle User (Y,Z etc.) rausholst und da wiederum schaust, wer diese als Direkteintrag hat, dann hast du doch, wenn du alles zusammenzählst, alle die mit X zu tun haben- direkt und indirekt.
Ist ja im Prinzip nix anderes als eine Baumstruktur (z.B. bei Navigation oft benutzt) mit Vaterknoten und Kindern.
Naja, egal, verklicker mir doch nochmal (auch an einem durchgängigen Zahlenbeispiel), was du machen willst...
P.S.: Willst du vielleicht nicht nur bis Indirekt4, sondern so tief, wie es eben in die Tiefe geht? Wenn ja, dann ja, d.h. das ist machbar. Müssen wir über eine rekursive Funktion lösen. Kein Problem, aber sag Bescheid, ob es das ist, was du willst...
Leave a comment:
-
Hallo BrainBug, Guten Morgen
da Du Dich schon so gut mit meinen Daten auskennst, würde ich mich freuen, wenn Du mir bei meinem nächsten Schritt weiterhilfts. Wenn Du keine Lust mehr hast, bitte einfach nur sagen.
Ich habe doch jetzt die Referrals ermittelt: Direkt1, Indirekt2, Indirekt3 und Indirekt4.
Jeder der User hat in meiner "logfiles" Tabelle Punkte angesammelt, die in der Statistik-Tabelle auch ausgegeben werden sollen.
Der User X hat 50 Punkte, der User Y hat 40 Punkte, der User Z hat 80 Punkte. Das gleiche Beispiel von heute Mittag: X ist Referrals von Y, und Z von X. Das heißt, daß in Direkt1 steht die Summe der Punkte von seinen Direkt1 Usern in dem Feld von Indirekt2 steht die Summe der Punkte von seinen Indirekt2 Usern usw.
Ich will aber noch tiefer gehen, und zwar die Direkt1, Indirekt2 usw. erhalten nur einen Teil der Punkte, die die User ja tatsächlichen an Punkte haben.
Ich hoffe Du verstehts mich, und ich hoffe auch ich verlange nicht zuviel.
Kann ich IRGENDWIE die Resultate von Deinem SUPER-CODE von heute Mittag verwenden?
Aber ich bin mir ganz sicher, daß Du mir da eine Lösung hast. Ich würde mich auf eine Antwort Morgen Mittag freuen.
Bis dann
Leave a comment:
-
freut mich auch riesig, daß es klappt.
Und immer her mit den Problemen und Fragen. Beantworte ich gerne, zumindest wenn ich dazu was weiß
außerdem mache ich das hier auch nicht zum reinen Zeitvertreib. Ich schau mir an, was die anderen so denken und sagen. Und außerdem bringt es mich weiter, wenn ich mir über solche Probleme Gedanken mache. Mal was nachschlagen oder im Netz schauen.
Okay, bis zum nächsten mal
Leave a comment:
-
Ich dachte schon Du bist sauer auf mich.
Mit was willst Du von mir hören, meinte ich ein "es geht" oder "es geht nicht".
Ich glaube ein "geht nicht" könntest Du nicht mehr verkraften.
ES GEHT, ES GEHT, ES GEHT, ES GEHT.
Ich mußte nur noch an deinem Code was ändern:
Anstatt tabelle habe ich referrels (so heißt auch meine Tabelle), eingetragen und Dein "refarrals" habe ich in "referrals" geändert. Und schwupdiwup läufts.
Habe auch noch den 4.Indirekt hinzugefügt, den $anz_redir4.
Wie kann ich Dir nur danken ? Du hast mir sehr geholfen, hätte es alleine nie geschafft.
Woher kennst Du so gut Mysql ?? Würde gerne noch vieles von Dir lernen.
Ich hätte auch schon eigentlich das nächste Problem. Aber nein, ich kann nicht mehr von Dir verlangen.
Nochmals DANKE
Würde mich auf ein baldiges Treffen freuen.
Bis bald
XAROC
Leave a comment:
-
$result1=mysql_query("select * from tabelle where referrals='$PHP_AUTH_USER'");
$anz1=mysql_numrows($result1);
$anz_redir2=0;
$anz_redir3=0;
for ($i1=0;$i1<$anz1;$i1++) {
$user=mysql_result($result1,$i1,"username");
$result2=mysql_query("select * from tabelle where refarrals='$user'");
$anz2=mysql_numrows($result2);
$anz_redir2=$anz_redir2+$anz2;
for ($i2=0;$i2<$anz2;$i2++) {
$user2=mysql_result($result2,$i2,"username");
$result3=mysql_query("select * from tabelle where refarrals='$user2'");
$anz3=mysql_numrows($result3);
$anz_redir3=$anz_redir3+$anz3;
}
}
$gesamt=$anz1+$anz_redir2+$anz_redir3;
echo "Direkt: ".$anz1." indirekt1: ".$anz_redir2." indirekt2: ".$anz_redir3." Gesamt: ".$gesamt;
falls du es merkst -> hier handelt es sich um eine rekursive Variante der Abfrage -> wenn du x-fach das runterbrechen willst, mußt du das als Funktion machen, die dann rekursiv aufgerufen wird. Falls nötig, kann ich dir das zeigen, aber erstmal schauen, ob das überhaupt funktioniert. Es werden nur die Anzahlen rausgezogen, nicht die usernamen!
Den Select von letztens mit "count(username),*" kannst du vergessen. Der geht gar nicht, da das ein Mix ist.
Leave a comment:
-
Darf ich mich eigentlich noch an Dich wenden ?????
Hast Du noch Geduld mit mir??
Es funktioniert immer noch nicht.
Ich glaube wir sollten nochmals von vorne anfangen.
Wahrscheinlich hast Du schon bemerkt was ich mit der Referrals-Tabelle machen will.
Der User logt sich ein und kann seine Statistik abfragen in einer Tabelle:
Statistik |Sie selbst | Direkt 1.| Indirekt 2.| Indirekt 3. Indirekt 4.| Gesamt |
Referrals | . | 3 | 4 | 0 | 0 | 7 |
Paid-Start |50 | 0 | 0 | 0 | 0 |50 |
PaidE-Mail |20 | 0 | 0 | 0 | 0 |20 |
PaidKlick |20 | 0 | 0 | 0 | 0 |20 |
Gesamt 04/2001| 90| 0| 0 |0 |0 |90 |
Meine Tabelle in MYQSL heißt referrals, da gibt es eine Spalte mit Username und eine mit Referrals.
Jetzt möchte ich, daß wenn der User X eingeloggt ist, sieht er in seiner Tabelle, 3 Direkt1, 4 Indirekt2, 0 Indirekt3, 0 Indirekt4, Gesamt 7 Referalls.
Das heißt, es gibt ein X-User der sich als Referrals bei über den Y-User anmeldet. Der Z-User meldet sich über den X-User an. => Y-User hat 1.Direkt (X) und 1.Indirekt (Z).
Du verstehen?
Danke für den Tipp mit @ (Unterdrückung der Fehlermeldung).
Hast Du einen RAT für mich BLÖDIAN ?
Leave a comment:
Leave a comment: