我的mysqli插入查询不起作用

时间:2014-01-28 07:58:33

标签: php mysql database mysqli

$db->query("INSERT INTO post_items(post_id,content,date,category_id) 
    VALUES ($postid, $content, $data, $category_id) where user_id =" . $userid)

这里有什么问题?我非常确定每个变量都是正确分配的。

5 个答案:

答案 0 :(得分:4)

您不能在插入查询中使用WHERE子句。使用UPDATE查询:

$db->query("UPDATE post_items set post_id='".$postid."',
                                  content='".$content."',
                                  date='".$data."',
                                  category_id='".$category_id."'
            WHERE user_id =".$userid)

答案 1 :(得分:3)

在不知道确切目的的情况下 - 为什么你需要那里的where子句? 并且post_id不会是一个自动递增字段吗?

尝试

$db->query("INSERT INTO post_items(content,date,category_id) 
    VALUES ('$content', '$data', '$category_id'));

答案 2 :(得分:2)

您不应在WHERE中使用INSERT

你错过了价值和条件的报价。

插入

执行此操作
$db->query("INSERT INTO post_items (post_id,content,date,category_id) 
  VALUES ('".$postid."', '".$content."', '".$data."', '".$category_id."')

这是更新

$db->query("UPDATE post_items 
            SET post_id     = '".$postid."',
                content     = '".$content."'
                date        = '".$data."',
                category_id = '".$category_id."'
            WHERE user_id   = '".$userid."'"
           );

答案 3 :(得分:2)

如果您在表格中尝试INSERT新值,请执行以下操作:

$db->query("INSERT INTO post_items(`post_id`,`content`,`date`,`category_id`)
VALUES ('$postid', '$content', '$data', '$category_id'))

如果您要尝试更新,请使用UPDATE

$db->query("UPDATE post_items set `post_id`='$postid',`content`='$content',`date`='$data',`category_id`='$category_id' where user_id=$userid");

答案 4 :(得分:2)

对此

使用Update查询
$db->query("UPDATE post_items set post_id=$postid,
                                  content=$content,date=$data,category_id=$category_idwhere user_id =" . $userid)

或者像这样使用insert查询

$db->query("INSERT INTO post_items(content,date,category_id) VALUES ('$content', '$data', '$category_id'));