Commit 9bf4ee8efd20ebaf9f1e63c3f110778933af141e
1 parent
f06ddf22
api/client/fiche
Showing
1 changed file
with
30 additions
and
92 deletions
Show diff stats
api/client/fiche.php
1 | <?php | 1 | <?php |
2 | 2 | ||
3 | -// Code d'exemple | ||
4 | -// N'hésitez pas à vous en inspirer ! | 3 | +require_once("../commun.php"); |
5 | 4 | ||
6 | -header('Access-Control-Allow-Origin: *'); // Histoire de pouvoir accéder à l'API depuis autre part que le serveur | ||
7 | -header('Content-type: application/json'); // Histoire de faire comprendre au client que c'est du JSON | 5 | +verifierJeton(donne("jeton")); |
8 | 6 | ||
9 | -$droit = 0; | ||
10 | -$login = "undefined"; | ||
11 | - | ||
12 | -if (isset($_POST['jeton'])) { | ||
13 | - // Note : Ceci devrait être mis dans une fonction (avec des vrais tokens qui | ||
14 | - // seront générés lors de l'appel à api/login) mais vu que c'est un exemple | ||
15 | - // j'ai la flemme. | ||
16 | - // D'ailleurs, pendant le développement puisque la phase de login est | ||
17 | - // probablement difficile à implémenter, on pourra utiliser des tokens | ||
18 | - // godmode (genre, '0', '1' ,'2' et '3') qui fonctionnent à tous les | ||
19 | - // coups ^^ | ||
20 | - if ($_POST['jeton'] == 'ahcheesinaib3eedaeshep7fooShee') { | ||
21 | - // Si le jeton appartient à un membre du BDE | ||
22 | - $droit = 1; | ||
23 | - $login = "bdeman"; | ||
24 | - } else if ($_POST['jeton'] == 'cuQu1vahghu8UK2woozooghu1aot4n') { | ||
25 | - // Si le jeton appartient à un membre du bar | ||
26 | - $droit = 2; | ||
27 | - $login = "barman"; | ||
28 | - } else if ($_POST['jeton'] == 'Phohhu3eengeingae8kab3weif3neb') { | ||
29 | - // Si le jeton appartient au prez | ||
30 | - $droit = 3; | ||
31 | - $login = "theprez"; | ||
32 | - } else { | ||
33 | - // Si le jeton est erroné, ou a expiré (dans l'exemples ils n'expirent pas ^^) | ||
34 | - ?> | ||
35 | -{ | ||
36 | - "status": "jeton_errone" | ||
37 | -} | ||
38 | -<?php | ||
39 | - exit(); | ||
40 | - } | ||
41 | -} else { | ||
42 | -// Si pas de jeton | ||
43 | -?> | ||
44 | -{ | ||
45 | - "status": "jeton_vide" | ||
46 | -} | ||
47 | -<?php | ||
48 | - exit(); | 7 | +if (!donne("idCarte")) { |
8 | + retour("requete_malformee"); | ||
49 | } | 9 | } |
50 | 10 | ||
51 | -if ($droit < 2) { | ||
52 | -?> | ||
53 | -{ | ||
54 | - "status": "non_autorise" | 11 | +// Informations sur l'utilisateur |
12 | +$requete = $db->prepare("SELECT decouvert, solde FROM Clients WHERE idCarte=?"); | ||
13 | +$requete->bind_param("s", $_POST["idCarte"]); | ||
14 | +if (!$requete->execute()) { | ||
15 | + retour("erreur_bdd", ["message" => $requete->error]); | ||
55 | } | 16 | } |
56 | -<?php | ||
57 | - exit(); | 17 | +$requete->bind_result($decouvert, $solde); |
18 | +if (!$requete->fetch()) { | ||
19 | + retour("client_inconnu"); | ||
58 | } | 20 | } |
21 | +$requete->close(); | ||
59 | 22 | ||
60 | -if (isset($_POST['idCarte'])) { | ||
61 | - $idCarte = $_POST['idCarte']; | ||
62 | -} else { | ||
63 | -?> | ||
64 | -{ | ||
65 | - "status": "requete_malformee" | ||
66 | -} | ||
67 | -<?php | ||
68 | - exit(); | 23 | +// Transactions de l'utilisateur |
24 | +$requete = $db->prepare("SELECT id, type, UNIX_TIMESTAMP(date), montant, quantite, utilisateur, valide FROM Transactions WHERE client=?"); | ||
25 | +$requete->bind_param("s", $_POST["idCarte"]); | ||
26 | +if (!$requete->execute()) { | ||
27 | + retour("erreur_bdd", ["message" => $requete->error]); | ||
69 | } | 28 | } |
29 | +$requete->bind_result($id, $type, $date, $montant, $quantite, $utilisateur, $valide); | ||
30 | +$transactions = []; | ||
31 | +while($requete->fetch()) { | ||
32 | + $transaction = ["id" => $id, "type" => $type, "client" => $_POST["idCarte"], "date" => $date, "montant" => $montant, "quantite" => $quantite, "utilisateur" => $utilisateur, "valide" => $valide]; | ||
33 | + $transactions[] = $transaction; | ||
70 | 34 | ||
71 | -// On checke si le loginLille1 est connu dans la base de données | ||
72 | -if ($idCarte != 'AHS0DIEX') { | ||
73 | -?> | ||
74 | -{ | ||
75 | - "status": "client_inconnu" | ||
76 | -} | ||
77 | -<?php | ||
78 | - exit(); | ||
79 | } | 35 | } |
36 | +$requete->close(); | ||
80 | 37 | ||
81 | -?> | ||
82 | -{ | ||
83 | - "status": "ok", | ||
84 | - "idCarte": "AHS0DIEX", | ||
85 | - "solde": 48.3, | ||
86 | -<?php | 38 | + |
39 | +$donnes = ["idCarte" => $_POST["idCarte"], "solde" => $solde, "transactions" => $transactions]; | ||
87 | if ($droit >= 3) { | 40 | if ($droit >= 3) { |
88 | -?> | ||
89 | - "decouvertAutorise": false, | ||
90 | -<?php | 41 | + $donnes["decouvert"] = !!$decouvert; |
91 | } | 42 | } |
43 | + | ||
44 | +retour("ok", $donnes); | ||
45 | + | ||
92 | ?> | 46 | ?> |
93 | - "transactions": [{ | ||
94 | - "id": 5, | ||
95 | - "type": 1, | ||
96 | - "date": 1460369884183, | ||
97 | - "montant": 50, | ||
98 | - "qte": 0, | ||
99 | - "valide": true | ||
100 | - }, { | ||
101 | - "id": 6, | ||
102 | - "type": 3, | ||
103 | - "date": 1460370161326, | ||
104 | - "montant": 1.7, | ||
105 | - "qte": 1, | ||
106 | - "valide": true | ||
107 | - }] | ||
108 | -} |