Scriptul arata asa:
Cod: Selectaţi tot
<?php
session_start();
if($_SESSION['id'] == "") {
die('Logeazate intai!');
}
else {
include('../config.php');
$db = "account";
mysql_connect($dbhost, $dbuser, $dbpw) OR
die("ERROR: Connection failed. ".mysql_error());
mysql_select_db($db) OR
die("ERROR: DB allready open. ".mysql_error());
$getuser = "SELECT * from account where login = '" . $_SESSION['id'] . "'";
$checkuser = mysql_query($getuser);
$num = mysql_num_rows($checkuser);
if($num > 0) {
$array = mysql_fetch_array($checkuser);
$itemid = $_GET['id'];
$user = $_SESSION['id'];
$coins = $_SESSION['coins'];
$icount = $_GET['numbercount']; #Asa am scris eu si nu e bine
$check = "SELECT * from itemshop where value = '" . $itemid . "'";
$query = mysql_query($check);
$num = mysql_num_rows($query);
if($num > 0) {
$array2 = mysql_fetch_array($query);
$rescash = $array['coins'] - $array2['coins'];
if($num > 0 && $rescash >= 0) {
mysql_select_db('player');
$i = 0;
$giveitem = "INSERT INTO item SET owner_id = '" . $array['id'] . "', window = 'MALL', pos = '" . $_SESSION['pos'] . "', count = '" . $icount . "', vnum = '" . $itemid . "', socket0 = '0', socket1 = '0', socket2 = '0'";
$result = mysql_query($giveitem);
if($result) {
if($_SESSION['pos'] == '42') {
$_SESSION['pos'] = '0'; }
else { $_SESSION['pos'] = $_SESSION['pos'] + 1; }
mysql_select_db('account');
$cashresult = $array['coins'] - $array2['coins'];
$coins = "UPDATE account set coins = '" . $cashresult . "' where login = '" . $_SESSION['id'] . "'";
$coinsresult = mysql_query($coins);
if($coinsresult) {
$_SESSION['coins'] = $cashresult;
echo "<meta http-equiv=\"refresh\" content=\"0;url=index.php?page=buysuccess\">";
} else {
echo "<meta http-equiv=\"refresh\" content=\"0;url=index.php?page=buyfail\">";
}
}
else { echo "<meta http-equiv=\"refresh\" content=\"0;url=index.php?page=buyfail\">"; }
} else { echo "<meta http-equiv=\"refresh\" content=\"0;url=index.php?page=nocash\">"; }
} else { echo "<meta http-equiv=\"refresh\" content=\"0;url=index.php?page=buyfail\">"; }
} else { echo "Logeazate intai!"; }
}
?>
Daca va uitati cu atentie la inceput selecteaza o baza de date numita "account" din care extrage anumite informatii si le muta in baza de date "player"
mai jos nu ne intereseaza unde scade din coins sau pozitioneaza obiectul(vnum) in joc.
Baza de date ACCOUNT - ItemShop contine
id - nu foloseste la nimic.. doar numarul obiectului cu autoincrement (nu ne intereseaza)
itemname - printeaza numele itemului in shop (in php) (nu ne intereseaza)
value - valoarea itemului (valuarea itemului care trece din Account - ItemShop in Player - Item) care este deja configurat sa faca asta (nu ne intereseaza)
numbercount - asta ma intereseaaza pe mine sa ii dam de cap, are mai multe randuri.. zeci chiar unde sunt bagate itemele
coins - monezile din care scade scriptul (nu ne intereseaza)
cat - categoria (nu ne intereseaza)
Baza de date PLAYER - ITEM contine
o gramada de chestii, singurul care ma intereseaza este
count - numarul de obiecte din inventar, are valoare "int" si se foloseste de numere.. maxim fiind 200
Ma chinui de o zii sa fac transferul de la baza de date ACCOUNT - ItemShop la PLAYER - ITEM
Deci vreau din "ACCOUNT -> numbercount" sa transfere valoarea setata in tabelul "ITEM -> count " unde am pus eu $icount dar nu e bine, asa cum face cu vnum = '" . $itemid . "'
Apropo, linia asta ne intereseaza, unde inserteaza..
$giveitem = "INSERT INTO item SET owner_id = '" . $array['id'] . "', window = 'MALL', pos = '" . $_SESSION['pos'] . "', count = '" . $icount . "', vnum = '" . $itemid . "', socket0 = '0', socket1 = '0', socket2 = '0'";
Ati inteles ceva? sau ma puteti ajuta?
Multumesc, Lucian