php laravel上的更新查询不工作,fetchAll()
我正在为服务器编写代码,其中一个必须执行的功能是使用特定Id更新用户表(通常为)的所有字段。删除和选择功能工作得很好,但这个功能似乎根本不起作用。该错误是致命错误:对布尔值中的成员函数fetchAll()调用 我试着做一个更新的小函数,我想它失败的原因可能是因为我给了它多少参数。但是,结果没有变化php laravel上的更新查询不工作,fetchAll(),php,mysql,laravel,sql-update,Php,Mysql,Laravel,Sql Update,我正在为服务器编写代码,其中一个必须执行的功能是使用特定Id更新用户表(通常为)的所有字段。删除和选择功能工作得很好,但这个功能似乎根本不起作用。该错误是致命错误:对布尔值中的成员函数fetchAll()调用 我试着做一个更新的小函数,我想它失败的原因可能是因为我给了它多少参数。但是,结果没有变化 function update($request, $response, $args){ $db = $this->db; $query = "UPDATE usuario se
function update($request, $response, $args){
$db = $this->db;
$query = "UPDATE usuario set IdRh = ". $args['idRh'].", IdEps =".$args ['IdEps'].", IdTipoDeDocumento =".$args['IdTipoDeDocumento'].", NroDeDocumento=".$args['NroDeDocumento'].", Nombre=".$args['Nombre'].", Apellido=".$args['Apellido'].",TelefonoFijo=".$args['TelefonoFijo'].", Celular=".$args['Celular'].", Email = ".$args['Email'].", Direccion =".$args['Direccion'].", Contrasena=".$args['Contrasena'].", FechaDeNacimiento =".$args['FechaDeNacimiento']." where id=". $args['id']."";
$result = $db->query($query);
return $response->withJson(
[
"status" => 101,
"data" => $result->fetchAll(),
"message" => "Usuario de Id: " .$args['id']. " ha sido actualizado.",
], 200
);
}
$app->get('/usuariou/{id}/{IdRh}/{IdEps}/{IdTipoDeDocumento}/{NroDeDocumento}/{Nombre}/{Apellido}/{TelefonoFijo}/{Celular}/{Email}/{Direccion}/{Contrasena}/{FechaDeNacimiento}', "UsuarioController:update");
我只想更新字段并快速消除错误。在手机上,请原谅语法错误 让我们从函数开始,假设您在laravel 5+上
Public function update(Request $request, $args){
//...code
}
看起来您调用请求并不是为了实际传递任何数据,所以我们需要调用请求方法和请求变量
其次,应该使用所需的数据库表创建一个模型,使其看起来像这样
Public function update(Request $request, $args){
$data = $request->all();
$query = Usario::update([
‘Value_1’ => $data[‘value’],
]);
If($query){
Return response()->json([status" => 101,
"data" => $result->fetchAll(),
"message" => "Usuario de Id: " .$args['id']. " ha sido actualizado.",
], 200
}
}
在这里,我们将值传递给对所创建的模型调用的update方法,第二个问题是当您使用fetch all时,我相信它返回的是bool值,而不是任何结果
我们可以试试这样的
$query = Usario::update([
‘Value_1’ => $data[‘value’],
])->fetchAll();
我再次在手机上试着让我知道你是否需要帮助,我们会在早上解决这个问题