Ajout de la gestion des erreurs
continuous-integration/drone/push Build is passing Details

database-api-implementation
Félix MIELCAREK 2 years ago
parent f1b7bb2df5
commit 1c2d2acfb9

@ -9,9 +9,12 @@ class Model
{
global $app;
$db = $app->getContainer()['settings']['db'];
$gw = new UserGateway(new Connection($db['dsn'], $db['user'], $db['pass']));
$id = filter_var($id, FILTER_SANITIZE_STRING);
$gw = new UserGateway(new Connection($db['dsn'], $db['user'], $db['pass']));
$userDb = $gw->getInformations($id);
if (count($userDb) != 1) {
throw new Exception("no user matches id");
}
$user = new User($userDb[0][0], $userDb[0][1]);
return $user->getInformations();
}
@ -25,7 +28,6 @@ class Model
$data['idDafl'] = filter_var($idDafl, FILTER_SANITIZE_STRING);
$data['idSpotify'] = filter_var($idSpotify, FILTER_SANITIZE_STRING);
$data['passw'] = filter_var($passw, FILTER_SANITIZE_STRING);
$gw = new UserGateway(new Connection($db['dsn'], $db['user'], $db['pass']));
$gw->addUser($data['idDafl'], $data['idSpotify'], $data['passw']);
}

@ -6,31 +6,40 @@ use \Psr\Http\Message\ResponseInterface as Response;
require "Model.php";
require "Connection.php";
// Test route
$app->get('/hello/{name}', function (Request $request, Response $response, array $args) {
$name = $args['name'];
$response->getBody()->write("Hello, $name");
return $response;
});
// Get information of a user
// Get information about a user
$app->get('/users/{id}', function (Request $request, Response $response, array $args) {
try {
$mdl = new Model();
$response->getBody()->write(json_encode($mdl->getInformationsUser($args['id'])));
$res = $mdl->getInformationsUser($args['id']);
} catch (Exception $e) {
$res = array("Error: " . $e->getMessage());
} finally {
$response->getBody()->write(json_encode($res));
return $response;
}
});
// Add a user
$app->post('/users/{id}', function (Request $request, Response $response, array $args) {
$app->post('/users/new', function (Request $request, Response $response, array $args) {
try {
$mdl = new Model();
$data = $request->getParsedBody();
$mdl->addUser($args['id'], $data['idSpotify'], $data['passw']);
if (!isset($data['idDafl']) || !isset($data['idSpotify']) || !isset($data['passw'])) {
throw new Exception("missing arguments");
}
$mdl->addUser($data['idDafl'], $data['idSpotify'], $data['passw']);
$res = "Ok";
} catch (Exception $e) {
$res = array("Error: " . $e->getMessage());
} finally {
$response->getBody()->write(json_encode($res));
return $response;
}
});
// Update information of a user
/*
// Update information about a user
$app->put('/users/{id}', function (Request $request, Response $response, array $args) {
$res = "Update infos of user " . $args['id'];
$response->getBody()->write($res);
@ -61,3 +70,4 @@ $app->post('/users/{id}/preferences', function (Request $request, Response $resp
return $response;
});
*/

Loading…
Cancel
Save