更新查询给出了Mariadb版本错误

时间:2017-03-23 05:22:20

标签: php mariadb

if (isset($_POST['update'])) {

   $column=(isset( $_POST['column']));

   $type= (isset($_POST['type']));

   $value= (isset($_POST['value']));

   mysql_query("UPDATE `combo1` SET column = '$column', type = '$type' ,value ='$value' WHERE id = '$id'");
}

更新查询不起作用我没有得到什么解决方案请帮我解决这个问题

  

您的SQL语法有错误;检查手册   对应于您的MariaDB服务器版本,以获得正确的语法   靠近'column ='',type ='',value =''WHERE id ='20''在第1行

4 个答案:

答案 0 :(得分:0)

isset()方法返回像这样的布尔值更改

 $column = isset( $_POST['column']) ? $_POST['column']:"";

其他人相同

答案 1 :(得分:0)

修改您的代码,如下所示:

if (isset($_POST['update'])) {

   $column = $_POST['column'];
   $type = $_POST['type'];
   $value = $_POST['value'];

   mysql_query("UPDATE `combo1` SET column = '$column', type = '$type' ,value ='$value' WHERE id = '$id'");
}

如果您删除了isset()方法(如果您想了解更多关于isset()方法的内容),请参阅此link,如上所述$column内的文字, $type$value会直接替换为更新字符串。

在这种情况下,更新字符串不包含任何语法错误。如果您想了解更多信息,请参阅此link

我还建议您阅读SQL injection,因为如果您不清理正在使用的数据,这种参数传递很容易被黑客攻击: MySQL - SQL Injection Prevention

答案 2 :(得分:0)

错误消息实际上与“版本”无关。这是一个抱怨“列”的语法错误。这个词是reserved word。因为您似乎已经调用了列//Add featured images add_action( 'genesis_before_content_sidebar_wrap', 'ws_post_image', 8 ); function ws_post_image() { global $post; wp_reset_postdata(); echo the_post_thumbnail($post->id); /*you can use medium, large or a custom size */ } ,所以将它放在它周围,就像您对表名所做的那样。

答案 3 :(得分:0)

mysqli_query($ link,“UPDATE The type JqlParseException does not define JqlParseException() that is applicable SET combo1 ='$ column',column ='$ type',type ='$ value'WHER { {1}} ='$ id'“) 或死(mysqli_error($ link));