2012-11-13 68 views
-4

嗨我在php中运行我的代码时不断收到SQL语法错误,但是当我删除变量并在MYSQL中手动执行时,没有问题。我试图用(')2个不同版本的查询一个和其他与(“),并没有什么。你能帮?你的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册

谢谢。

  $produpdateid = $_GET ['id']; 
     $varcat = $_POST['category']; 
     $vartitle = strip_tags($_POST['title']); 
     $varoverview = strip_tags($_POST['overview']); 
     $varfeatures = strip_tags($_POST['features']); 
     $varspecification = strip_tags($_POST['specification']); 
     $varmaker = strip_tags($_POST['maker']); 
     $varsize = $_POST['size']; 
     $varprice = $_POST['price']; 
     $varstock = $_POST['stock']; 
     $vartype = $_POST['stock']; 

$q = 'UPDATE products SET products_category_id=' . $varcat . ', title=' . $vartitle . ', overview=' . $varoverview . ', features=' . $varfeatures . ', specification=' . $varspecification . ', size=' . $varsize . ', size_type=' . $vartype . ', maker=' . $varmaker . ', image=' . $varimg . ', price=' . $varprice . ', stock=' . $varstock .' WHERE id=' .$produpdateid; 

/*$test = "UPDATE products SET products_category_id=" . $varcat . ", title=" . $vartitle . ", overview=" . $varoverview . ", features=" . $varfeatures . ", specification=" . $varspecification . ", size=" . $varsize . ", size_type=" . $vartype . ", maker=" . $varmaker . ", image=" . $varimg . ", price=" . $varprice . ", stock=" . $varstock ." WHERE id=" .$produpdateid;*/ 

$updateresult = mysqli_query($dbc,$q); 
+1

你可能需要引用值。另外:了解[*预处理语句*](http://j.mp/T9hLWi) – PeeHaa

+1

[你真的需要逃避你的变量。 。](http://xkcd.com/327/) –

+0

试图逃避变量,什么也没有,相同的错误 – user1810442

回答

2

使用文本周围双引号。

'UPDATE products SET products_category_id="' . $varcat . '", title="' . $vartitle . '", 

等。

+0

谢谢你,这是非常有帮助的 – user1810442

相关问题