PUT с Slim Framework и дооснащением Android

У меня проблемы , когда я хочу выполнить метод обновления с использованием тонкой структуры. мои данные не могут быть обновлены.

ниже мой код PHP:

$app->put('/eta1/{id}', function($request, $response, $args) use($app, $db){
$matkul = $request->getParams();
$eta1 = filter_var($matkul['eta1'], FILTER_SANITIZE_STRING);
$eta2 = filter_var($matkul['eta2'], FILTER_SANITIZE_STRING);
$query = $db->prepare('UPDATE tbl_matkul SET eta1=$eta1, eta2=$eta2 WHERE id = :id');
$query->bindParam('id', $args['id']);
$result = $query->execute();
$responseJson["error"] = false;
$responseJson["message"] = "Berhasil menambahkan ke database";
echo json_encode($responseJson);

});

Я использую дооснащение в клиенте Android

Вы можете попробовать это здесь: Обновить одну строку с помощью PDO?

odan 29.07.2018 20:20
0
1
70
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Попробуй это:

$app->put('/eta1/{id}', function($request, $response, $args) use($app, $db){
    $matkul = $request->getParams();

    $row = [
        'id' => (int)$args['id'],
        'eta1' => $matkul['eta1'],
        'eta2' => $matkul['eta2'],
    ];

    $sql = "UPDATE tbl_matkul SET eta1=:eta1, eta2=:eta2 WHERE id=:id;";
    $status = $db->prepare($sql)->execute($row);

    $responseJson = [];

    if ($status) {
        $responseJson["error"] = false;
        $responseJson["message"] = "Berhasil menambahkan ke database";
    } else {
        $responseJson["error"] = true;
        $responseJson["message"] = "Database operation failed";
    }

    return $response->withJson($responseJson);
});

Другие вопросы по теме