Mysql SQL语法MariaDB服务器版本为正确的语法

时间:2017-08-13 11:24:19

标签: php mysql mariadb

我觉得我的查询没有错。我不明白为什么我得到错误。

我已经尝试删除查询的单引号,但它仍然是相同的。

这是代码

ERROR

  

无法输入数据:SQL语法中有错误;查看与您的MariaDB服务器版本对应的手册,以便在'Hills,price ='393787',sqmw ='218',sqml ='218',sqm ='47524',income ='3773773'附近使用正确的语法第1行

更新谢谢

PHP CODE MYSQL         

require 'connection.php';
$conn    = Connect();
$id= $conn->real_escape_string($_POST['id']);
$descr= $conn->real_escape_string($_POST['descr']);
$price= $conn->real_escape_string($_POST['price']);
$sqmw= $conn->real_escape_string($_POST['sqmw']);
$sqml= $conn->real_escape_string($_POST['sqml']);
$sqm = $sqmw * $sqml;
$income= $conn->real_escape_string($_POST['income']);
$statuss= $conn->real_escape_string($_POST['statuss']);
$query   = " UPDATE wentwrong SET descr='$descr',
 price='$price',
 sqmw='$sqmw',
 sqml='$sqml',
 sqm='$sqm',
 income='$income',
 statuss='$statuss'
 WHERE id='$id' ";

$success = $conn->query($query); 

if (!$success) {
    die("Couldn't enter data: ".$conn->error);

}

echo '<script language="javascript">';
echo 'alert("Edit Successfully!")';
echo '</script>';

echo '<script language="javascript">';
echo 'window.location.href = "http://google.com"';
echo '</script>';


$conn->close();

?>

1 个答案:

答案 0 :(得分:2)

您在常量周围缺少引号。你在哪里

 $query   = " UPDATE wentwrong SET descr=$descr,    /*wrong*/
你应该

 $query   = " UPDATE wentwrong SET descr='$descr',  

解决此类问题的技巧。

  1. 仔细阅读错误消息。然后再读一遍。
  2. 相信错误信息。您正在使用已存在数十年的系统。他们不再抛出随机的伪造错误。
  3. 对于MySQL的语法错误消息,它会显示错误的查询,从它无法理解的第一个字符开始。