Advertisement
Guest User

Untitled

a guest
Mar 31st, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.76 KB | None | 0 0
  1. <?php
  2. class Database {
  3.  
  4. private $conn;
  5. private $host;
  6. private $user;
  7. private $pass;
  8. private $data;
  9.  
  10. private $table;
  11.  
  12. public function __construct($host, $user, $pass, $data) {
  13. $this->host = $host;
  14. $this->user = $user;
  15. $this->pass = $pass;
  16. $this->data = $data;
  17. }
  18.  
  19. public function connect() {
  20. try {
  21. $this->conn = new PDO('mysql:host='.$this->host.';dbname='.$this->data.';charset=utf8', $this->user, $this->pass);
  22. $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
  23. $this->conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
  24. return true;
  25. } catch (Exception $e) {
  26. return false;
  27. }
  28. }
  29.  
  30. public function setTable($table) {
  31. $this->table = $table;
  32. }
  33.  
  34. public function countUsers() {
  35. $stmt = $this->$conn->prepare("SELECT * FROM $this->table LIMIT 500");
  36. $stmt->execute();
  37. return count($stmt->fetchAll(PDO::FETCH_ASSOC));
  38. }
  39.  
  40. public function getUser($name) {
  41. $stmt = $this->conn->prepare("SELECT * FROM $this->table WHERE username=:name");
  42. $stmt->bindParam(":name", $name);
  43. $stmt->execute();
  44. return $stmt->fetch(PDO::FETCH_ASSOC);
  45. }
  46.  
  47. public function getAllUsers($skill, $min) {
  48. $stmt = $this->conn->prepare("SELECT * FROM $this->table ORDER BY $skill DESC LIMIT $min, 25");
  49. $stmt->execute();
  50. return $stmt->fetchAll(PDO::FETCH_ASSOC);
  51. }
  52.  
  53. public function getRank($user, $skill) {
  54. $sk = strtolower($skill)."_xp";
  55. $stmt = $this->conn->prepare("SELECT * FROM $this->table ORDER BY ".$sk." DESC LIMIT 200");
  56. $stmt->execute();
  57. $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
  58. $count = 1;
  59. foreach ($results as $entry) {
  60. if (strtolower($entry['username']) == strtolower($user)) {
  61. return $count;
  62. }
  63. $count++;
  64. }
  65. return "--";
  66. }
  67.  
  68. }
  69. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement