Advertisement
Guest User

Untitled

a guest
Dec 14th, 2018
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.63 KB | None | 0 0
  1. <?php
  2. class banco {
  3. private $pdo;
  4.  
  5. public function __construct() {
  6. $dns = "mysql:dbname=praticando_caixaeletronico;host=localhost";
  7. $dbuser = "root";
  8. $dbpass = "";
  9.  
  10. try {
  11. $this->pdo = new PDO($dns, $dbuser, $dbpass);
  12. } catch(PDOExcption $e) {
  13. echo "Erro: ".$e->getMessage();
  14. }
  15. }
  16.  
  17. /*
  18. * Função que faz o acesso a conta
  19. */
  20. public function accessAccount($titular, $agencia, $conta, $senha) {
  21. $sql = "SELECT * FROM contas WHERE titular = :titular AND agencia = :agencia AND conta = :conta AND senha = :senha";
  22. $sql = $this->pdo->prepare($sql);
  23. $sql->bindValue(":titular", $titular);
  24. $sql->bindValue(":agencia", $agencia);
  25. $sql->bindValue(":conta", $conta);
  26. $sql->bindValue(":senha", $senha);
  27. $sql->execute();
  28.  
  29. if($sql->rowCount() > 0) {
  30. $containfo = $sql->fetch();
  31. $_SESSION['banco'] = $containfo['id'];
  32. return true;
  33. } else {
  34. return false;
  35. }
  36. }
  37.  
  38. /*
  39. * Função que faz o usuário sair do sistema, fechando a session
  40. */
  41. public function closeSession($id) {
  42. unset($_SESSION['banco']);
  43. }
  44.  
  45. /*
  46. * Função que retorna os dados do usário da conta
  47. */
  48. public function getAccount($id) {
  49. $sql = "SELECT * FROM contas WHERE id = :id";
  50. $sql = $this->pdo->prepare($sql);
  51. $sql->bindValue(":id", $id);
  52. $sql->execute();
  53.  
  54. if($sql->rowCount() > 0) {
  55. return $sql->fetch();
  56. } else {
  57. return false;
  58. }
  59. }
  60.  
  61. /*
  62. * Função que adiciona saldo na conta
  63. */
  64. public function addMoney($id, $valor) {
  65. $sql = "SELECT * FROM contas WHERE id = :id";
  66. $sql = $this->pdo->prepare($sql);
  67. $sql->bindValue(":id", $id);
  68. $sql->execute();
  69.  
  70. if($sql->rowCount() > 0) {
  71. $info = $sql->fetch();
  72. $sql = "UPDATE contas SET saldo = saldo + :valor WHERE id = :id";
  73. $sql = $this->pdo->prepare($sql);
  74. $sql->bindValue(":id", $id);
  75. $sql->bindValue(":valor", $valor);
  76. $sql->execute();
  77. }
  78. }
  79.  
  80. /*
  81. * Função que verifica se possui saldo suficiente para sacar
  82. */
  83. public function verifyMoney($id, $valor) {
  84. $sql = "SELECT * FROM contas WHERE id = :id";
  85. $sql = $this->pdo->prepare($sql);
  86. $sql->bindValue(":id", $id);
  87. $sql->execute();
  88.  
  89. if($sql->rowCount() > 0) {
  90. $sql = $sql->fetch();
  91.  
  92. if($sql['saldo'] >= $valor) {
  93. return true;
  94. } else {
  95. return false;
  96. }
  97. }
  98. }
  99.  
  100. /*
  101. * Função que remove saldo na conta
  102. */
  103. public function removeMoney($id, $valor) {
  104. if($this->verifyMoney($id, $valor) == true) {
  105. $sql = "SELECT * FROM contas WHERE id = :id";
  106. $sql = $this->pdo->prepare($sql);
  107. $sql->bindValue(":id", $id);
  108. $sql->execute();
  109.  
  110. if($sql->rowCount() > 0) {
  111. $info = $sql->fetch();
  112. $sql = "UPDATE contas SET saldo = saldo - :valor WHERE id = :id";
  113. $sql = $this->pdo->prepare($sql);
  114. $sql->bindValue(":id", $id);
  115. $sql->bindValue(":valor", $valor);
  116. $sql->execute();
  117. return true;
  118. }
  119. } else {
  120. return false;
  121. }
  122. }
  123.  
  124. /*
  125. * Função que adiciona translação ao historico da conta
  126. */
  127. public function addHistoric($id, $tipo, $valor) {
  128. $sql = "INSERT INTO historico (id_conta, tipo, valor, data_operacao) VALUES (:id_conta, :tipo, :valor, NOW())";
  129. $sql = $this->pdo->prepare($sql);
  130. $sql->bindValue(":id_conta", $id);
  131. $sql->bindValue(":tipo", $tipo);
  132. $sql->bindValue(":valor", $valor);
  133. $sql->execute();
  134. }
  135.  
  136. /*
  137. * Função que retorna o historico da conta
  138. */
  139. public function getHistoric($id) {
  140. $sql = "SELECT * FROM historico WHERE id_conta = :id";
  141. $sql = $this->pdo->prepare($sql);
  142. $sql->bindValue(":id", $id);
  143. $sql->execute();
  144.  
  145. if($sql->rowCount() > 0) {
  146. return $sql->fetchAll();
  147. } else {
  148. return array();
  149. }
  150. }
  151. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement