gpt4 book ai didi

PHP - 使用 postman 更新查询返回成功但不更新数据库中的值

转载 作者:行者123 更新时间:2023-11-29 01:50:26 37 4
gpt4 key购买 nike

我读过这个posthere但尚未找到解决方案

我有这样的功能更新:

 public function updateArtist($id, $name, $genre){
$stmt = $this->con->prepare("UPDATE api SET name = ?, genre = ? WHERE id = ?");
$stmt->bind_param("sss",$id, $name, $genre);
if($stmt->execute())
return true;
return false;
}

更新索引为:

 case 'updateartist':
if(isset($_POST['id']) && isset($_POST['name']) && isset($_POST['genre'])){
$db = new DbOperation();
if($db->updateArtist($_POST['id'], $_POST['name'], $_POST['genre'])){
$response['error'] = false;
$response['message'] = 'Artist updated successfully';
}else{
$response['error'] = true;
$response['message'] = 'Could not update artist';
}
}else{
$response['error'] = true;
$response['message'] = 'Required Parameters are missing';
}
break;

我正在使用 postman 进行尝试,这是显示成功消息的 postman 的输出:

success

但是当我检查mysql时,这个值没有改变,

我是不是漏了什么?

最佳答案

绑定(bind)参数的顺序必须与查询中的顺序相同。
s 用于 stringi 用于 integerd 用于 decimal bblob 同时绑定(bind)参数。

public function updateArtist($id, $name, $genre){
$stmt = $this->con->prepare("UPDATE api SET name = ?, genre = ? WHERE id = ?");
$stmt->bind_param("ssi", $name, $genre, $id);
if($stmt->execute())
return true;
return false;
}

关于PHP - 使用 postman 更新查询返回成功但不更新数据库中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45954817/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com