Fejl i "SQL syntax" via UPDATE
HejEr ved at lave en lille shop i php/mysql, men der kommer en fejl når jeg vil lave en UPDATE på en vare, som er valgt fra en udtrækningsliste.
Selve udplukket for edit-filen ser sådan ud:
<form method="post" action="form.handle.php">
<input type="hidden" name="referer" value="edit_shop">
<input type="hidden" name="id" value="<?php echo $_GET['id']; ?>">
<input type="hidden" name="offset" value="<?php echo $_GET['offset']; ?>">
<div class="r">group</div> <input type="text" name="group" value="<?php echo $row['group']; ?>" style="width: 300px"><br>
<div class="r">product</div> <input type="text" name="product" value="<?php echo $row['product']; ?>" style="width: 300px"><br>
<div class="r">manufacturer</div> <input type="text" name="manufacturer" value="<?php echo $row['manufacturer']; ?>" style="width: 300px"><br>
<div class="r">stock</div> <input type="text" name="stock" value="<?php echo $row['stock']; ?>" style="width: 300px"><br>
<div class="r">costprice</div> <input type="text" name="costprice" value="<?php echo $row['costprice']; ?>" style="width: 300px"><br>
<div class="r">offer</div> <input type="text" name="offer" value="<?php echo $row['offer']; ?>" style="width: 300px"><br>
<div class="r">image</div> <input type="text" name="image" value="<?php echo $row['image']; ?>" style="width: 300px"><br>
<div class="r">date_created</div> <input type="hidden" name="date_created" value="<?php echo $row['date_created']; ?>" style="width: 300px"><br>
<div class="r">status</div> <input type="text" name="status" value="<?php echo $row['status']; ?>" style="width: 300px"><br>
<div class="r">description</div> <textarea name="description" rows="10" cols="0" style="width: 300px"><?php echo $row['description']; ?></textarea><br><br>
<div class="r"> </div> <input type="submit" value="Send">
</form>
Og selve formlen ser sådan ud:
if ($_POST['referer'] == 'edit_shop') {
mysql_query("UPDATE shop SET group='".$_POST['group']."', product='".$_POST['product']."', manufacturer='".$_POST['manufacturer']."', description='".$_POST['description']."', stock='".$_POST['stock']."', costprice='".$_POST['costprice']."', offer='".$_POST['offer']."', image='".$_POST['image']."', date_created='".$_POST['date_created']."', date_changed='".time()."', status='".$_POST['status']."' WHERE id=".$_POST['id']."") or die(mysql_error());
header("Location: shop.list.php?offset=".$_POST['offset']);
}
Når jeg prøver på at lave en UPDATE, så ser fejlen sådan ud:
"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 'group='Harddisk', product='DiamondMax 22 750GB', manufacturer='Maxtor ', descrip' at line 1"
Synes selv at jeg har testet igennem fra start til slut for at se hvad der driller, men har ikke heldet med mig.
Håber der er nogen der kan hjælpe mig med at gennemskue dette.