Ik krijg deze fout:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= '1' WHERE name = 'tdr93'' at line 4

Met deze query:
UPDATE users SET
money = '" . $money . "' ,
skill = '" . $newskill."' ,
" . $item . " = '1'
WHERE name = '" . $_SESSION['suser'] . "'

Wat moet ik veranderen?
En zo:
<?php
$sql = "
UPDATE users
SET
money = '" . $money . "',
skill = '" . $newskill."',
" . $item . " = 1
WHERE
name = '" . $_SESSION['suser'] . "'";
?>
Bedankt!

Hoe doe ik dit:
$money = $row['money'] - $prijs;
$newskill = $row['skill'] + $skill;
$prijs heeft een waarde... en $skill ook.

Maar volgensmij gaat dit niet... er komt gewoon -[prijs]..

dat is niet de bedoeling. Hoe moet dit?
Is $prijg een interget / getal?
$money = $row['money']-$prijs;, moet werken

Je voert wel de query uit? ($query = mysql_query($sql)) en daarna mysql_fetch_assoc($query) ?

edit:
en heb je daarvoor wel geselecteerd?
Wat is integer?:D

een positief getal? jah!

iets kan toch niet -€40,- kosten of wel?
Dan doe je toch iets fout in de rest van je script. Dit voorbeeldje werkt uitstekend, geen enkel probleem:
<?php
error_reporting(E_ALL);

$prijs = 23;
$row['money'] = 50;

$money = $row['money'] - $prijs;

echo $money;
?>
En dat kun je zelf ook controleren door hier en daar even een variabele te echoen.
je kan geen euro teken gebruiken, he? en daarnaast kan 0 - 40, -40 worden
Dit is mijn script:
<?php  
require ("session.php");  
require ("connect.php");
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<title></title>
</head>

<body>
<p><?php include("bar.php"); ?></p>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td>
<?php
error_reporting(E_ALL);
include ("prijs.php");
        $money = $row['money'] - $prijs;
        $newskill = $row['skill'] + $skill;  
    if ($row['money'] >= $prijs) 
    {
	echo '<p class="content">Je hebt niet genoeg geld!</p>';
    }
    else 
    {  
	$insert = "UPDATE users SET
    money = '" . $money . "',
    skill = '" . $newskill."',
    " . $_GET['item'] . " = 1
	WHERE name = '" . $_SESSION['suser'] . "'";
	mysql_query($insert)or die(mysql_error());
	echo '<p class="content">Item is gekocht!</p>';
}
?> 
</td>
  </tr>
</table>
</body>
</html>


[edit]

<?php
if ($_GET['item'] == 'ranger') {
$prijs = 8000;
$skill = 100;
}

if ($_GET['item'] == 'greenwood') {
$prijs = 4000;
$skill = 30;
}
?>

Is niet alles (s meer dan 1000 regels)
[/edit]
Tdr93 schreef op 26.06.2006 21:46
Wat is integer?:D

een positief getal? jah!

iets kan toch niet -€40,- kosten of wel?
Een integer is een geheel getal. Dus 1, 2 en -1 zijn bijvoorbeeld integers. 1.5 is dus géén integer.

En waarom kan iets niet - € 40,- kosten? Dan krijg je gewoon geld toe. Wanneer jij dat niet wilt, zul je daar dus op moeten controleren.
<?php
if($prijs <= 0){
echo 'Minimumprijs is € 0,-';
}
?>
hmm... erg gevoelig voor sql-injection, post ook prijs.php eens? (kan wel gewoon in een edit)

Reageren