PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Refauszahlungen



darkness_design
04.03.2008, 20:09
Hi,

ich habe seit Tagen das Problem das die Refverdienste zwar in der Buchung laufen aber die Refzahlungen (z.b. 45%) nicht ausgeführt werden.
Ich habe im cron schon das % in Prozent umgewandelt aber es hat nicht zur Lösung geführt.
In der Refübersicht sind User auch auf inaktiv obwohl sie täglich klicken!?

Und in der db ist unter werberdaten auch der Umsatz (aktuell) komplett leer

Wer hat ne Lösung für mich...

Grüße darkness

jpwfour
04.03.2008, 20:19
also dass mit den refs als inaktiv angezeigt werden ist afaik ein fehler schon im grundscript, weiß nicht mehr genau, obs jetzt gar nicht drin war oder fehlerhaft, aber änder mal in der datei
/lib/functions.lib.php:
die funktion refumsatz():

// Refumsatz gutschreiben
function refumsatz ($buchungssumme,$fuer) {
global $db_prefix;
db_query ('UPDATE '.$db_prefix.'_werberdaten SET umsatz = umsatz + '.$buchungssumme.' , aktivzeit='.time().' WHERE uid = '.$fuer.' and werber != 0');
}

denke im grundscript fehlte das:
, aktivzeit='.time().'

kann mich aber auch irren, wäre nett, wenn du postest, ob es allein mit dieser änderung schon funktioniert hat.


zu dem problem mit dem refback kann ich nicts sagen, da es bei mir funktioniert.

darkness_design
04.03.2008, 21:24
also dass mit den refs als inaktiv angezeigt werden ist afaik ein fehler schon im grundscript, weiß nicht mehr genau, obs jetzt gar nicht drin war oder fehlerhaft, aber änder mal in der datei
/lib/functions.lib.php:
die funktion refumsatz():

// Refumsatz gutschreiben
function refumsatz ($buchungssumme,$fuer) {
global $db_prefix;
db_query ('UPDATE '.$db_prefix.'_werberdaten SET umsatz = umsatz + '.$buchungssumme.' , aktivzeit='.time().' WHERE uid = '.$fuer.' and werber != 0');
}

denke im grundscript fehlte das:
, aktivzeit='.time().'

kann mich aber auch irren, wäre nett, wenn du postest, ob es allein mit dieser änderung schon funktioniert hat.


zu dem problem mit dem refback kann ich nicts sagen, da es bei mir funktioniert.

Hi,

also in der funktion habe ich dieses drin

function refumsatz ($buchungssumme,$fuer) {
global $db_prefix;
db_query ("UPDATE ".$db_prefix."_werberdaten SET umsatz = umsatz + ".$buchungssumme.", aktivzeit='".time()."' WHERE uid='".$fuer."' and werber != 0");
}

Grüße darkness

jpwfour
04.03.2008, 23:36
heißt das jetzt, dass du es nun so geändert hast oder das es schon von anfang an so drin war?

(hab grad noch mal nachgeschaut, in der version, die ich gedownloaded hab, fehlt das setzen der aktivzeit tatsächlich)

darkness_design
05.03.2008, 07:58
heißt das jetzt, dass du es nun so geändert hast oder das es schon von anfang an so drin war?

(hab grad noch mal nachgeschaut, in der version, die ich gedownloaded hab, fehlt das setzen der aktivzeit tatsächlich)

Hi,

nein es ist vorhanden.

Grüße darkness

Diese Nacht sind jetzt überhaupt keine Ref-Zahlungen getätigt worden... hmmm

Grüße darkness

didith1207
05.03.2008, 15:44
poste doch mal deinen refverdienst cron bitte

darkness_design
05.03.2008, 17:26
poste doch mal deinen refverdienst cron bitte


<?
require_once ('../lib/functions.lib.php');
db_connect();

// Prozente laden!
$refdaten = mysql_fetch_array(db_query("SELECT `re1`,`re2`,`re3`,`re4`,`re5` FROM ".$db_prefix."_seitenkonfig"));

// Userdurchlauf
$refliste = db_query ("SELECT * FROM ".$db_prefix."_werberdaten");
while ($refliste_1 = mysql_fetch_array($refliste)) {
$verdienst = 0;

// Ebene 1
$refebene_1 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$refliste_1['uid']."'");
while ($anzeigen_1 = mysql_fetch_array($refebene_1)) {
$verdienst = $verdienst + ($anzeigen_1['umsatz']/100*$refdaten['re1']);
$pro_verdienst = $anzeigen_1['umsatz'] / 100 * $refdaten['re1'];
db_query ("UPDATE ".$db_prefix."_werberdaten SET gesamt=gesamt+'".$pro_verdienst."' , reset=reset+'".$pro_verdienst."' WHERE uid='".$anzeigen_1['uid']."'");
if ($anzeigen_1['refback'] >= 1 && ($anzeigen_1['umsatz']/100*$refdaten['re1'])/100*$anzeigen_1['refback'] >= 0.01) {
$buchungs_id = create_code(14);
$refback = ($anzeigen_1['umsatz']/100*$refdaten['re1'])/100*$anzeigen_1['refback'];
kontobuchung ('+',$refback,$anzeigen_1['uid']);
buchungsliste ($buchungs_id,'+'.$refback,'Refback '.$anzeigen_1['refback'].'Prozent ('.$refliste_1['uid'].')',$anzeigen_1['uid']);
buchungsliste ($buchungs_id,'-'.$refback,'Refback '.$anzeigen_1['refback'].'Prozent gezahlt ('.$anzeigen_1['uid'].')',$refliste_1['uid']);
$pro_verdienst = $pro_verdienst - $refback;
$refback = 0;
$buchungs_id = '';
}
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 2
$refebene_2 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_1['uid']."'");
while ($anzeigen_2 = mysql_fetch_array($refebene_2)) {
$verdienst = $verdienst + ($anzeigen_2['umsatz']/100*$refdaten['re2']);
$pro_verdienst = $anzeigen_2['umsatz']/100*$refdaten['re2'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 3
$refebene_3 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_2['uid']."'");
while ($anzeigen_3 = mysql_fetch_array($refebene_3)) {
$verdienst = $verdienst + ($anzeigen_3['umsatz']/100*$refdaten['re3']);
$pro_verdienst = $anzeigen_3['umsatz']/100*$refdaten['re3'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 4
$refebene_4 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_3['uid']."'");
while ($anzeigen_4 = mysql_fetch_array($refebene_4)) {
$verdienst = $verdienst + ($anzeigen_4['umsatz']/100*$refdaten['re4']);
$pro_verdienst = $anzeigen_4['umsatz']/100*$refdaten['re4'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 5
$refebene_5 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_4['uid']."'");
while ($anzeigen_5 = mysql_fetch_array($refebene_5)) {
$verdienst = $verdienst + ($anzeigen_5['umsatz']/100*$refdaten['re5']);
$pro_verdienst = $anzeigen_5['umsatz']/100*$refdaten['re5'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

} }
}
}
}
}

if ($verdienst >= 0.01) {
$buchungs_id = create_code(14);
buchungsliste ($buchungs_id,'+'.$verdienst,'Refverdienste',$refl iste_1['uid']);
}

}
db_query("UPDATE ".$db_prefix."_werberdaten SET umsatz=0");
// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Ext. Refzahlungen'");
db_close();
?>

Roadstar
05.03.2008, 18:00
Lösche folgendes aus dem Cron

require_once ('../lib/functions.lib.php');
db_connect();
und

// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Ext. Refzahlungen'");
db_close();
dann sollte es klappen.

didith1207
05.03.2008, 20:34
Lösche folgendes aus dem Cron

require_once ('../lib/functions.lib.php');
db_connect();
und

// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Ext. Refzahlungen'");
db_close();
dann sollte es klappen.

ich nehme mal an das er wirklich vms 1.1 hat dann braucht er das aber ;)


Hmmm..hab mir das ganze mal angeguckt du hast nicht zufällig da refebenen oder so dazugebastelt? ich habe eine klammer angefunden die zuviel ist!!
versuch mal diesen code:

<?
require_once ('../lib/functions.lib.php');
db_connect();

// Prozente laden!
$refdaten = mysql_fetch_array(db_query("SELECT `re1`,`re2`,`re3`,`re4`,`re5` FROM ".$db_prefix."_seitenkonfig"));

// Userdurchlauf
$refliste = db_query ("SELECT * FROM ".$db_prefix."_werberdaten");
while ($refliste_1 = mysql_fetch_array($refliste)) {
$verdienst = 0;

// Ebene 1
$refebene_1 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$refliste_1['uid']."'");
while ($anzeigen_1 = mysql_fetch_array($refebene_1)) {
$verdienst = $verdienst + ($anzeigen_1['umsatz']/100*$refdaten['re1']);
$pro_verdienst = $anzeigen_1['umsatz'] / 100 * $refdaten['re1'];
db_query ("UPDATE ".$db_prefix."_werberdaten SET gesamt=gesamt+'".$pro_verdienst."' , reset=reset+'".$pro_verdienst."' WHERE uid='".$anzeigen_1['uid']."'");
if ($anzeigen_1['refback'] >= 1 && ($anzeigen_1['umsatz']/100*$refdaten['re1'])/100*$anzeigen_1['refback'] >= 0.01) {
$buchungs_id = create_code(14);
$refback = ($anzeigen_1['umsatz']/100*$refdaten['re1'])/100*$anzeigen_1['refback'];
kontobuchung ('+',$refback,$anzeigen_1['uid']);
buchungsliste ($buchungs_id,'+'.$refback,'Refback '.$anzeigen_1['refback'].'Prozent ('.$refliste_1['uid'].')',$anzeigen_1['uid']);
buchungsliste ($buchungs_id,'-'.$refback,'Refback '.$anzeigen_1['refback'].'Prozent gezahlt ('.$anzeigen_1['uid'].')',$refliste_1['uid']);
$pro_verdienst = $pro_verdienst - $refback;
$refback = 0;
$buchungs_id = '';
}
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 2
$refebene_2 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_1['uid']."'");
while ($anzeigen_2 = mysql_fetch_array($refebene_2)) {
$verdienst = $verdienst + ($anzeigen_2['umsatz']/100*$refdaten['re2']);
$pro_verdienst = $anzeigen_2['umsatz']/100*$refdaten['re2'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 3
$refebene_3 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_2['uid']."'");
while ($anzeigen_3 = mysql_fetch_array($refebene_3)) {
$verdienst = $verdienst + ($anzeigen_3['umsatz']/100*$refdaten['re3']);
$pro_verdienst = $anzeigen_3['umsatz']/100*$refdaten['re3'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 4
$refebene_4 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_3['uid']."'");
while ($anzeigen_4 = mysql_fetch_array($refebene_4)) {
$verdienst = $verdienst + ($anzeigen_4['umsatz']/100*$refdaten['re4']);
$pro_verdienst = $anzeigen_4['umsatz']/100*$refdaten['re4'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

// Ebene 5
$refebene_5 = db_query ("SELECT `uid`,`umsatz`,`werber`,`refback`,`gesamt` FROM ".$db_prefix."_werberdaten WHERE werber='".$anzeigen_4['uid']."'");
while ($anzeigen_5 = mysql_fetch_array($refebene_5)) {
$verdienst = $verdienst + ($anzeigen_5['umsatz']/100*$refdaten['re5']);
$pro_verdienst = $anzeigen_5['umsatz']/100*$refdaten['re5'];
kontobuchung ('+',$pro_verdienst,$refliste_1['uid']);
$pro_verdienst = 0;

}
}
}
}
}

if ($verdienst >= 0.01) {
$buchungs_id = create_code(14);
buchungsliste ($buchungs_id,'+'.$verdienst,'Refverdienste',$refl iste_1['uid']);
}

}
db_query("UPDATE ".$db_prefix."_werberdaten SET umsatz=0");
// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Ext. Refzahlungen'");
db_close();
?>

darkness_design
06.03.2008, 00:26
Hi,

ja ich versuche es mal.
Habe VMS 1 und auch auf 5 Ref. Ebenen erweitert.

Grüße darkness

darkness_design
06.03.2008, 07:39
Hi,

ja ich versuche es mal.
Habe VMS 1 und auch auf 5 Ref. Ebenen erweitert.

Grüße darkness

Moin Moin,

nun läufts wieder, wunderwerk der technik..... es lebt <lol>

Danke und Grüße darkness

mine321
24.03.2009, 20:53
Das ähnliche Problem habe ich auch, nur das der Werber volle hundert Prozent in der Buchungsliste hat und auf dem Konto erscheinen nur 50. Die ref´s erhalten trotz 90% einstellung nicht ein Los, Woran kann das liegen habe das Froum schon nach sämtlichen lösungen durch sucht aber nichts gefunden. und wenn ich , aktivzeit='.time().' einbaue lässt sich die Seite nicht mal mehr öffnen.

Habt ihr ne Lösung woran das liegen könnte?

Habe das vms 1.2

jpwfour
24.03.2009, 21:37
...und wenn ich , aktivzeit='.time().' einbaue lässt sich die Seite nicht mal mehr öffnen.
...

Ok, da das aber definitiv gehen sollte, solltest du erstmal schau'n, dass du diesen Code richtig eingebaut bekommst.


Bist du dir sicher, dass die Refs die Lose nicht erhalten?
Oder gehst du da nur von der Buchungsliste aus :biggrin1:

Ist ja so, dass das VMS1 bisher mit dem % nicht so gut "befreundet" ist, evtl gehst du mal in den Refzahlungscron und ersetzt alle % entweder durch 2 %, also %% oder bspw. durch Proz.

Dann mal abwarten, was passiert...

mine321
24.03.2009, 21:47
danke für die schnelle antwort und ja die ref´s erhalten keine lose, nach dem ich den cron laufen lasse, probiere jetzt da mit den %% bzw Proz.

sage dann bescheid ob es funkt. hat oder nicht

mine321
24.03.2009, 21:54
danke das mit dem %% hat funkt. und in der Buchungsliste erscheine bei den Ref´s die buchungen jetzt auch wie der Refback.

jpwfour
24.03.2009, 22:01
danke das mit dem %% hat funkt. und in der Buchungsliste erscheine bei den Ref´s die buchungen jetzt auch wie der Refback.

Dann waren vorher die Lose da, nur der Buchungslisteneintrag nicht :yes:

Zur Ref-Aktiv-Zeit:

// Refumsatz gutschreiben
function refumsatz ($buchungssumme,$fuer) {
global $db_prefix;
if($buchungssumme<0)$buchungssumme=0;
db_query ('UPDATE '.$db_prefix.'_werberdaten SET umsatz = umsatz + '.$buchungssumme.' , aktivzeit='.time().' WHERE uid = '.$fuer.' and werber != 0');
}