ОБНОВЛЕНИЕ запроса на php laravel не работает, fetchAll () - PullRequest
0 голосов
/ 13 апреля 2019

Я пишу код для сервера, и одна из функций, которые мне нужно сделать, - обновить все поля таблицы (usuarios) пользователя с помощью определенного идентификатора.Функции удаления и выбора работают отлично, но эта, кажется, не работает вообще.Ошибка: Неустранимая ошибка: вызов функции-члена fetchAll () для логического значения в ...

Я попытался сделать меньшую функцию, которая обновляется, думая, что, возможно, причина ее сбоя была из-за того, сколько аргументовЯ давал это.Однако без изменений в результатах

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");

Я просто хочу обновить поля и быстро избавиться от ошибки.

1 Ответ

0 голосов
/ 13 апреля 2019

На мобильном телефоне, так что простите грамматические ошибки. Давайте начнем с вашей функции и предположим, что вы находитесь на уровне 5+

Public function update(Request $request, $args){
   //...code
 }

Похоже, вы не вызываете запрос на фактическую передачу каких-либо данных, поэтому мынужно вызвать метод Request вместе с переменной request.

Во-вторых, вы должны создать модель с желаемой таблицей базы данных, чтобы она выглядела следующим образом.

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
   }
 }

Здесь мы находимсяПередача наших значений в метод обновления, который вызывается для созданной модели, вторая проблема - когда вы используете fetch all, я верю, что он возвращает значение bool, а не какие-либо результаты

Так что мы можем попробовать что-то вроде этого

$query = Usario::update([
   ‘Value_1’ => $data[‘value’],
   ])->fetchAll();

Также еще раз на мобильном телефоне, поэтому я попробовал сообщить мне, если вам нужна дополнительная помощь, и мы разберемся с этим утром

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...