PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Interner Transfer



Ibijrg
12.05.2010, 02:59
Hallo,

habe mir soeben aus dem Downloadbereich "Interner Transfer" runtergeladen. Funktioniert auch, allerdings wurden dem Absender Bonuslose abgezogen, dem Empfänger jedoch richtige Lose gutgeschrieben.
Was kann ich in Datei einfügen, damit auschliesslich echte Lose transferiert werden?

Lokutos
12.05.2010, 03:22
die kontobuchungsfunktion ersetzen mit dem db-query

db_query("UPDATE vms_kontodaten SET kontostand = kontostand-'".$wasweisich."' WHERE uid = '".$user."'");

Ibijrg
12.05.2010, 03:27
die kontobuchungsfunktion ersetzen mit dem db-query

db_query("UPDATE vms_kontodaten SET kontostand = kontostand-'".$wasweisich."' WHERE uid = '".$user."'");

Danke für prompte Antwort, aber ich bin dumm :( Wo genau muß das hin?
Hier mal Auszug aus der transfer.php:
$_POST['empfaengerid'] = (int)$_POST['empfaengerid'];
$_POST['userpwd'] = isset($_POST['userpwd']) ? $_POST['userpwd'] : '';



$kontodaten = mysql_fetch_array(db_query("SELECT `kontostand`,`passwort` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
$user_check = db_query ("SELECT `uid` FROM ".$db_prefix."_kontodaten WHERE uid='".$_POST['empfaengerid']."' LIMIT 1");


if ($_POST['auszahlen'] == 'Abschicken' && $_POST['ueberweisung'] && $_POST['empfaengerid']) {
if (mysql_num_rows($user_check)) {
if (!ereg("[^0-9]", $_POST['ueberweisung'])){
if ($_POST['ueberweisung'] <= $kontodaten['kontostand']){
if(md5($_POST['userpwd']) == $kontodaten['passwort'])
{

$buchungs_id = create_code(14);
kontobuchung ('-',$_POST['ueberweisung'],$_SESSION['uid']);
kontobuchung ('+',$_POST['ueberweisung'],$_POST['empfaengerid']);
buchungsliste ($buchungs_id,'-'.$_POST['ueberweisung'],'Transfer zu '.$_POST['empfaengerid'],$_SESSION['uid']);
buchungsliste ($buchungs_id,'+'.$_POST['ueberweisung'],'Transfer von '.$_SESSION['uid'],$_POST['empfaengerid']);
$meldung = 'Es wurden '.$_POST['ueberweisung'].' '.$waehrung.' an User '.$_POST['empfaengerid'].' überwiesen.';

}else
{
$meldung = 'Das eingegebene Passwort stimmt nicht mit deinem überein!';
}

}else
{
$meldung = 'Soviele '.$waehrung.' hast du nicht mehr!';
}
}else
{
$meldung = 'Ein Fehler bei der eingabe der Losemenge';
}
}else
{
$meldung = 'Den Empfänger gibt es nicht!';
}
}else
{
if ($_POST['auszahlen'] == 'Abschicken') $meldung = 'Eingabefehler, bitte wiederholen!!!';
}

auron2008
12.05.2010, 08:13
das hier

kontobuchung ('-',$_POST['ueberweisung'],$_SESSION['uid']);
musst du ändern in

db_query("UPDATE vms_kontodaten SET kontostand = kontostand-'".$_POST['ueberweisung']."' WHERE uid = '".$_SESSION['uid']."'");

da du das BL addon hast, wo bei einer negativen Kontobuchung immer zuerst Bonuslose abgezogen werden.

Lokutos
12.05.2010, 13:41
du solltest auch an alle anderen stellen denken z.b. auszahlen ich kenne genug vms seiten da klickst du auf auszahlen und es werden zuerst bonuslose abgezogen.