isbuy.php problem pls help

01/09/2011 18:23 ~TaLeX~#1
Hey com haben problem
Wen jemand was bei und im is kauft steht im log das er es 2 mall gekauft hat und manchmall bekommt er 2 items kann man das fixen ?

dewnke mall in is_buy.php aber finde da nix pls help...



01/09/2011 18:44 'Haseo#2
vielleicht weil man 1 mal klickt dann dauert des und man klickt zweites mal
01/09/2011 18:46 ~TaLeX~#3
ne -.- leider nich man kauft und bekommt 2 und im logg stehen 2
01/09/2011 19:13 BaTushi16#4
Mach dir einen Account mit vielen Coins.
Kauf einmal mit Mozilla Firefox , einmal mit Internet Explorer und einmal mit Google Chrome.
Und guck welches 2X kauft.
01/09/2011 19:17 Computerfreek#5
Schreib das ganze mal in PHP-Tags, dann lässt sich das besser lesen.
Zudem ist pushen verboten, daher #reported..


€dit:
Werden denn auch die Coins zwei mal angezogen?
01/09/2011 19:32 ~TaLeX~#6
coints werden auch dopelt abgezogen und es werden mit allen 3 i net browsern abgezogen -.-
09/24/2011 00:16 [ShiizoPhreN]™#7
<?PHP

if(isset($_SESSION['user_admin']) && checkInt($_SESSION['user_admin']) && $_SESSION['user_admin']>=0) {

if(isset($_GET['id']) && checkInt($_GET['id'])) {

$sqlCmd="SELECT vnum, preis, attrtype0, attrvalue0, attrtype1, attrvalue1, attrtype2, attrvalue2, attrtype3, attrvalue3, attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, socket0, socket1, socket2 FROM ".SQL_HP_DB.".is_items WHERE id='".$_GET['id']."' AND anzeigen='J' LIMIT 1";
$sqlQry=mysql_query($sqlCmd,$sqlHp);
if(mysql_num_rows($sqlQry)==1) {

$getItem=mysql_fetch_object($sqlQry);

$sqlCoins = "SELECT coins FROM account.account WHERE id='".mysql_real_escape_string($_SESSION['user_id'])."' LIMIT 1";
$qryCoins = mysql_query($sqlCoins,$sqlServ);
$getCoins = mysql_fetch_object($qryCoins);

if(($getCoins->coins)>=$getItem->preis) {

$getGroesse = compareItems($getItem->vnum);
$belPos = checkPos($_SESSION['user_id']);
$possiblePos = findPos($belPos['islager'],$getGroesse['groesse']);
if(!empty($possiblePos)) {

$nCoins = $getCoins->coins-$getItem->preis;

$sqlCmd="UPDATE account.account SET coins='".mysql_real_escape_string($nCoins)."' WHERE id='".mysql_real_escape_string($_SESSION['user_id'])."' LIMIT 1";
$sqlQry=mysql_query($sqlCmd,$sqlServ);

$sqlLog="INSERT INTO ".SQL_HP_DB.".is_log (account_id,vnum,preis,zeitpunkt) VALUES ('".mysql_real_escape_string($_SESSION['user_id'])."','".$getItem->vnum."','".$getItem->preis."','".$sqlZeit."')";
$qryLog=mysql_query($sqlLog,$sqlHp);

$sqlItem="INSERT INTO player.item
(owner_id,window,pos,count,vnum,attrtype0, attrvalue0, attrtype1, attrvalue1, attrtype2, attrvalue2, attrtype3, attrvalue3, attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, socket0, socket1, socket2)
VALUES
('".mysql_real_escape_string($_SESSION['user_id'])."','MALL','".$possiblePos[0]."','1','".$getItem->vnum."','".$getItem->attrtype0."', '".$getItem->attrvalue0."', '".$getItem->attrtype1."', '".$getItem->attrvalue1."', '".$getItem->attrtype2."', '".$getItem->attrvalue2."', '".$getItem->attrtype3."', '".$getItem->attrvalue3."', '".$getItem->attrtype4."', '".$getItem->attrvalue4."', '".$getItem->attrtype5."', '".$getItem->attrvalue5."', '".$getItem->attrtype6."', '".$getItem->attrvalue6."', '".$getItem->socket0."', '".$getItem->socket1."', '".$getItem->socket2."')";
$qryItem=mysql_query($sqlItem,$sqlServ) or die(mysql_error());

echo'<p class="meldung">Das item wurde erfolgreich gekauft. Sollte das Item nicht im Lager erscheinen, bitte umgehend bei einem Admin melden.</p>';

}
else {
echo'<p>Sie haben nicht genügend Platz in ihrem Itemshop-Lager. Ihr Guthaben wurde nicht verändert.</p>';
}

}
else {
echo'<p class="meldung">Sie haben nicht genug Coins.</p>';
}
}
else {
echo'<p class="meldung">Das angegebe Item existiert nicht.</p>';
}
}
else {
echo'<p class="meldung">Es wurde keine gültige ID eingegeben.</p>';
}
echo'<p><a href="javascript:history.back()">zurück</a></p>';
}
else {
echo'<p class="meldung">Sie müssen für diesen Bereich angemeldet sein.</p>';
}
?>

das rot markierte ist dein bug