带有Slim Framework和Android改装的PUT

时间:2018-07-29 10:03:29

标签: android retrofit slim

我有问题, 当我想使用苗条的框架的更新方法。 我的数据无法更新。

下面是我的代码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客户端中使用改造

1 个答案:

答案 0 :(得分: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);
});