繁体   English   中英

如何使用PDO更新数据库?

[英]How to update a database with PDO?

我做一个print_r($params); 每个价值都会实现。 由于某种原因,它没有更新数据库。

Select语句可以与其他PDO语句一起使用,并且可以使用mysql更新项目,但可以将其升级为PDO(例如此语句)。

我的语法有什么问题吗?

$getData        =       new Data();
$gptest         =       $getData    ->  insert_group_id($item_id, $id, $gp, $groupid, $type);

Data()类包括以下这些:

function insert_group_id($item_id, $id, $gp, $groupid, $type) {

 $params = array(
        'item_id' => $item_id,
        'id' => $id,
        'gp' => $gp,
        'group_id' => $groupid,
        'type' => $type
    );

   $qry = "UPDATE actions_item
            SET gp = :gp ,
                group_id = :group_id ,
                type = :type
            WHERE itemID = :item_id
            AND itemVID = :id
            ";

    return $this->update($qry, $params);        
}

protected function update($sql, $params)
{
    $stmt = $this->dbh->prepare($sql);
    return $stmt->execute($params);
}

您的数组键必须具有与占位符相同的格式。

$params = array(
        ':item_id' => $item_id,
        ':id' => $id,
        ':gp' => $gp,
        ':group_id' => $groupid,
        ':type' => $type
    );

根据我写这篇得知后立即,冒号不应要求。 我用所有相同的列名建立了一个表,没有它们,您的确切代码对我有用。 因此,我真的不确定为什么这似乎可以解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM