Php 不允许使用where子句插入值

Php 不允许使用where子句插入值,php,mysql,pdo,where,mariadb,Php,Mysql,Pdo,Where,Mariadb,我正在制作论坛,我正在尝试这样做,当你回复一个主题时,它会将回复信息放在一个有效的表格中,然后它会将值插入子类别表格中,其中子类别ID等于子类别ID 代码: 问题: 它不允许我用WHERE子句插入值。我怎样才能克服这个问题呢?你不能,因为INSERT语句没有WHERE子句。您需要使用UPDATE语句 有关这两个独立和不同功能的更多信息,请参阅: $cid和$sid是在哪里定义的,为什么它们不在参数数组中?请使用更新而不是插入 $query = "INSERT INTO subca

我正在制作论坛,我正在尝试这样做,当你回复一个主题时,它会将回复信息放在一个有效的表格中,然后它会将值插入子类别表格中,其中子类别ID等于子类别ID

代码:

问题:

它不允许我用WHERE子句插入值。我怎样才能克服这个问题呢?

你不能,因为INSERT语句没有WHERE子句。您需要使用UPDATE语句

有关这两个独立和不同功能的更多信息,请参阅:

$cid和$sid是在哪里定义的,为什么它们不在参数数组中?请使用更新而不是插入
        $query = "INSERT INTO subcategories (last_topic_title, last_topic_date, last_topic_user) VALUES (:last_topic_title, :last_topic_date, :last_topic_user) WHERE cid='".$cid."' AND sid='".$sid."'";
        $query_params = array(':last_topic_title' => $topic_title, ':last_topic_date' => $reply_date, ':last_topic_user' => $reply_creator);
        try {
            $stmt = $db->prepare($query);
            $result = $stmt->execute($query_params);
        }
        catch(PDOException $ex) {
            die("Failed to run query" . $ex->getMessage());
        }