Guest User

Untitled

a guest
Jan 7th, 2018
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. <?php
  2. /*
  3. * Copyright 2017 Joseph Orlando.
  4. */
  5. class Database {
  6. private static $DefaultConnectionUrlEnv = 'MYSQL_CONNECT_URL';
  7. private static $session = null;
  8.  
  9. // Connect using a ConnectionURL, as such: setSession('mysql://user:pass@hostname/dbname');
  10. // Connect using connection parameters, as such: setSession('hostname', 'user', 'pass', 'dbname');
  11. public static function setSession($host='', $user='', $pass='', $dbname=''){
  12. if(empty($dbname) && !empty($host)){
  13. // Connect URL given.
  14. $UrlParts = parse_url($host);
  15. if(!empty($UrlParts)){
  16. return self::setSession($UrlParts['host'], $UrlParts['user'], $UrlParts['pass'], str_replace('/', '', $UrlParts['path']));
  17. }
  18. }else{
  19. self::$session = new mysqli($host, $user, $pass, $dbname);
  20. if(self::$session != null && empty(self::$session->connect_error)){
  21. return true;
  22. }
  23. }
  24. return false;
  25. }
  26.  
  27. public static function getSession(){
  28. if(self::$session == null){
  29. self::setSession($_ENV[self::$DefaultConnectionUrlEnv]);
  30. }
  31. return self::$session;
  32. }
  33.  
  34. // Sanitize all values in an array for SQL injection.
  35. // Example: sanitizeArrayValues($_GET);
  36. public static function sanitizeArrayValues(&$Arr){
  37. if(!empty($Arr) && self::getSession() != null){
  38. foreach ($Arr as $key => $val){
  39. $Arr[$key] = self::getSession()->real_escape_string($val);
  40. }
  41. }
  42. }
  43. }
  44. ?>
Add Comment
Please, Sign In to add comment