Autor Zpráva
Sanjay
Profil
Dobrý den, potřeboval bych kod který odečte hodnotu z MySQL databáze lépe řečeno z tabulky stat na řádku na kterém se nachází uuid a hp odečte hp... No snad jsem podal dobře vysvětlení... Snažil jsem se to napsat sám ale bohužel to nějak nefunguje přikládám kód a předem děkuji za odpověď... Sanjay
$uuid = $_GET['uuid'];
$kolik = $_GET['kolik'];

if ($uuid == "") {
      die("Unauthorized usage!");
}

include("config.php");

$zaklad = mysql_query("SELECT * FROM stat WHERE hp BY uuid='$uuid'");

$hp = $zaklad - $kolik;

mysql_query("update stat set hp='$hp' where uuid='$uuid'");
jenikkozak
Profil
Sanjay:
Na výsledek z databáze (proměnnou $zaklad) použij funkci mysql_fetch_array().
Tori
Profil
* Chybí escapování.
* mysql_query vrací popisovač výsledku nebo false, nikoli hodnotu.
* a stačí na to jeden update:

if (isset($_GET['uuid']) && !empty($_GET['kolik']))  {
  $result = mysql_query("UPDATE `stat` SET `hp` = `hp` - " . intval($_GET['kolik']) . " WHERE `uuid` = " . intval($_GET['uuid']));
  if ($result && mysql_affected_rows()) {
    // řádky updatovány
  }
} else {
  die(...);
}
PS: Je doporučené nepoužívat mysql_* funkce (jsou zastaralé), koukněte třeba na porovnání MySQLi a PDO
ShiraNai7
Profil
Na radku 10-12 nikde nevidim pouziti neceho jako mysql_fetch_assoc() ..
Sanjay
Profil
Tori: Nevím proč ale nefunguje mi to neodečte vůbec nic...
Sanjay
Profil
Tak sem nato přišel díky všem za rady :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: