使用mysqli准备的UPDATE数据库?

时间:2014-04-19 12:18:35

标签: php mysqli

我使用以下代码更新数据库。这是mysqli prepared statement。 我没有收到任何错误,但它也没有更新数据库!

有人能让我知道我的代码中缺少什么吗?

if (isset($_POST['product_name'])) {
    include "config/connect.php";
    $targetID = $_GET['edit'];
    $product_name = mysqli_real_escape_string($db_conx, $_POST['product_name']);


    if ($stmt = $db_conx->prepare("UPDATE $storeShop SET product_name = ?  WHERE id = ?")){
        $stmt->bind_param('si', $product_name, $targetID);  

        $stmt->execute();
        $stmt->close();
    }
    else {
        //Error
        printf("Prep statment failed: %s\n", $db_conx->error);
    }

提前致谢。

1 个答案:

答案 0 :(得分:-1)

这是我修复它的方式:

我添加了一个隐藏的输入字段,如下所示:

<input name="thisID" type="hidden" value="<?php echo $targetID; ?>" />

我在代码的顶部添加了这段代码:

$pid = $_POST['thisID'];

最后我在代码中更改了这一行:

$stmt->bind_param('si', $product_name, $pid);

一切正常。

我希望这有助于某人。