PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Statt normales Guthaben Bonuspoints abziehen



seg98
17.04.2010, 18:39
Hallo,
ich habe ein Shop für meine Seite, wo User für ihre normales Guthaben Produkte (Gutscheine) kaufen können. Nach der Sommerpause meiner Seite, möchte ich, aber, dass die User NUR mit den Bonuspoints diese Produkte kaufen können, sodass KEIN normales Guthaben abgezogen wird.

Doch wie geht das ?
Danke für die Hilfe.

Mfg seg98

didith1207
17.04.2010, 19:52
in der datei die das guthaben bucht(abzieht) hast du sowas wie :

kontobuchung($summe,$_Session[uid]);

wenn du nun eine tabelle mit bonuspoints hast bei kontodaten kannst du draus einfach :


bonuspoints($summe,$_Session[uid]);

machen und schon werden nur noch bonuspoints abgezogen

seg98
10.08.2010, 17:12
Da leider die User das mit den Bonuspoints nicht gut finden, sondern lieber mit dem normalen Guthaben wieder kaufen möchten, soll das ganze wieder rückgängig gemacht werden.

Nun finde ich leider nicht mehr die Stelle, die ich ändern muss, damit nur noch das normale Guthaben abgezogen wird :redface: .


<?
/*
Dieses Addon unterliegt dem Copyright von Gremlin (184974)
Inhaber Aller Rechte ist: Klammid: 122471
Keine Haftung für Schäde die durch das nutzen oder nicht nutzen des Scriptes auftreten.
*/
?>
<?
$info = mysql_fetch_array(db_query("SELECT * FROM ".$db_prefix."_shop_produkte WHERE id = ".$_GET['id'].""));
?>
<?if ($_GET['action']==info){?>
<?head("".$info['bezeichnung']."");?>
<table border="0" width="99%">
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td align="center" colspan="2"><?=$info['beschreibung'];?></td>
</tr>
<?if($info['bildA'] == 1){?>
<tr>
<td><a href="<?=$info['bild'];?>" target="_Blank">Bild</a>
</tr>
<?}?>
<?if($info['demoA'] == 1){?>
<tr>
<td><a href="<?=$info['demo'];?>" target="_Blank">Demo</a>
<?}?>
<tr>
<td colspan="2" align="center"><b><a href="?content=/shop/produkt&action=buy&id=<?=$info['id'];?>">Produkt für <?=$info['preis'];?> GP-Points kaufen.</b></a></td>
</table>
<?foot();?>
<?}?>

<?if ($_GET['action']==buy){?>
<?head();?>
<form action="?content=/shop/produkt&action=buy2&id=<?=$info['id'];?>" METHOD="POST">
<center><?=$info['bezeichnung'];?></center><br>
<table border="0">
<tr>
<td>Anzahl:
<td><input type="text" name="anzahl" value="1">
<tr>
<td>Sonstiges:
<td><textarea name="infos"></textarea>
<tr>
<td colspan="2" align="center"><input type="submit" value="Kaufen!">
</table>
</form>
<?foot();?>
<?}?>

<?if ($_GET['action']==buy2){?>

<?
$kontodaten = mysql_fetch_array(db_query("SELECT `kontostand` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));

if ($kontobuchung['kontostand']<$info['preis']*$_POST['anzahl']){
head("Fehler");
echo 'Du hast nicht genügend Guthaben um dieses Produkt zu kaufen!';
foot();
}else{
$preis = $info['preis']*$_POST['anzahl'];
kontobuchung ('-',$preis,$_SESSION['uid']);
$code = create_code(16);
buchungsliste ($code,'-'.$preis,$info['bezeichnung'],$_SESSION['uid']);

db_query("INSERT INTO ".$db_prefix."_shop_bestellungen (uid,produkt,status,zeit,menge,infos)VALUES ('".$_SESSION['uid']."','".$_GET['id']."','0','".time()."','".$_POST['anzahl']."','".$_POST['infos']."')");
db_query("UPDATE ".$db_prefix."_shop_produkte SET verkauft=verkauft+".$_POST['anzahl']." WHERE id = ".$_GET['id']."");

head("Produkt gekauft");
echo 'Du hast das Produkt mit der Artikelnummer '.$_GET['id'].' '.$_POST['anzahl'].' mal gekauft. Die GP wurden dir soeben abgezogen, in Kürze wirst du das Produkt erhalten. Solltest du noch Fragen haben melde dich einfach bei uns.
<p>
Das '.$seitenname.' Team';
foot();
}
}
?>

Danke für die Hilfe.

Mfg seg98

hankfromhelvete
10.08.2010, 17:40
Da du die Function kontobuchung (); nutzt, denke ich mal, dass das in der functions.lib.php so geregelt wird, dass erst Bonuspoints abgebucht werden und dann das normale Guthaben.

Müsstest dir dann mal die Function genauer ansehen.