Advertisement
Guest User

Untitled

a guest
Oct 4th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.69 KB | None | 0 0
  1. class DB
  2. {
  3.     private $dbh;
  4.    
  5.     function __construct($host='localhost', $user='root', $password='', $dbname='ems')
  6.     {
  7.         $this->dbh = new mysqli( $host, $user, $password, $dbname);
  8.     }
  9.    
  10.    
  11.     function registerEmployee($name, $surname, $login, $password1, $password2, $email)
  12.     {
  13.         $name=htmlentities($name, ENT_QUOTES);
  14.         $surname=htmlentities($surname, ENT_QUOTES);
  15.         $login=htmlentities($login, ENT_QUOTES);
  16.         $password1=htmlentities($password1, ENT_QUOTES);
  17.         $password2=htmlentities($password2, ENT_QUOTES);
  18.         $email=htmlentities($email, ENT_QUOTES);
  19.        
  20.         $stmt=$this->dbh->prepare('SELECT id FROM employee WHERE login=? OR email=?');
  21.         $stmt->bind_param('ss', $login, $email);
  22.         $stmt->execute();
  23.         $stmt->bind_result($result);
  24.         $stmt->fetch();
  25.        
  26.         $_SESSION['formerror']=0;
  27.         $_SESSION['conflict']=0;
  28.         $_SESSION['loginerror']=0;
  29.         $_SESSION['passerror']=0;
  30.        
  31.         if(!$name || !$surname || !$login || !$password1 || !$password2 || !$email)  $_SESSION['formerror']=1;
  32.         if($result)  $_SESSION['conflict']=1;
  33.  
  34.         if(strlen($login)<7)  $_SESSION['loginerror']=1;
  35.         if((strlen($password1)>7||strlen($password2)>7)||($password1!=$password2))  $_SESSION['passerror']=1;
  36.  
  37.         if($_SESSION['formerror'] || $_SESSION['conflict'] || $_SESSION['loginerror'] || $_SESSION['passerror'])
  38.         {
  39.             return 0;
  40.         }
  41.         else
  42.         {
  43.             $stmt=0;
  44.             $password=password_hash($password1, PASSWORD_DEFAULT);
  45.            
  46.             $stmt=$this->dbh->prepare("INSERT INTO employee VALUES (NULL, ?, ?, ?, ?, ?, NULL)");
  47.             $stmt->bind_param('sssss', $name, $surname, $login, $password, $email);
  48.             $stmt->execute();
  49.        
  50.             return 1;
  51.         }
  52.     }
  53.        
  54.        
  55.     function addTask($from_place, $to_place, $from_time, $to_time, $km, $payment)
  56.     {
  57.         $stmt=$this->dbh->prepare('SELECT id FROM task WHERE from_place=? AND to_place=? AND from_time=? AND to_time=? AND km=? AND payment=?');
  58.         $stmt->bind_param('ssssdd', $from_place, $to_place, $from_time, $to_time, $km, $payment);
  59.         $stmt->execute();
  60.         $stmt->bind_result($result);
  61.         $stmt->fetch();
  62.         if($result)
  63.         {
  64.             return 0;
  65.         }
  66.        
  67.         $stmt=$this->dbh->prepare('INSERT INTO task VALUES(null, null, ?, ?, ?, ?, ?, ?, ?)');
  68.         $stmt->bind_param('ssssdd', $from_place, $to_place, $from_time, $to_time, $km, $payment, 0);
  69.         $stmt->execute();
  70.            
  71.         if($stmt)
  72.         {
  73.             return 1;
  74.         }
  75.         else
  76.         {
  77.             return 0;
  78.         }
  79.     }
  80.    
  81.    
  82.     function setTaskPerformer($employee_id, $task_id)
  83.     {
  84.         $stmt=$this->dbh->prepare('UPDATE task SET performer=? WHERE id=?');
  85.         $stmt->bind_param('ss', $employee_id, $task_id);
  86.         $stmt->execute();
  87.         $result=$stmt->affected_rows;
  88.         if($result)
  89.         {
  90.             return 1;
  91.         }
  92.         else
  93.         {
  94.             return 0;
  95.         }
  96.     }
  97.    
  98.    
  99.     function getTaskByID($task_id)
  100.     {
  101.         $stmt=$this->dbh->prepare('SELECT * FROM task WHERE id=?');
  102.         $stmt->bind_param('s', $task_id);
  103.         $stmt->execute();
  104.         $result=$stmt->fetch_assoc();
  105.        
  106.         return $result;
  107.     }
  108.    
  109.    
  110.     function getTaskByPerformer($employee_id)
  111.     {
  112.         $stmt=$this->dbh->prepare('SELECT * FROM task WHERE performer=?');
  113.         $stmt->bind_param('s', $employee_id);
  114.         $stmt->execute();
  115.         $result=$stmt->fetch_assoc();
  116.        
  117.         return $result;
  118.     }
  119.    
  120.    
  121.     function getEmployeeByID($employee_id)
  122.     {
  123.         $stmt=$this->dbh->prepare('SELECT id, name, surname, login, email, salary FROM task WHERE id=?');
  124.         $stmt->bind_param('s', $employee_id);
  125.         $stmt->execute();
  126.         $result=$stmt->fetch_assoc();
  127.        
  128.         return $result;
  129.     }
  130.    
  131.    
  132.     function getTasks($count, $from=0)
  133.     {
  134.         $stmt=$this->dbh->prepare('SELECT * FROM task LIMIT ?, ?');
  135.         $stmt->bind_param('s', $count);
  136.         $stmt->execute();
  137.         $result=$stmt->fetch_array(MYSQLI_ASSOC);
  138.        
  139.         return $result;
  140.     }
  141.    
  142.    
  143.     function getOrderedTasks($count, $from=0)
  144.     {
  145.         $stmt=$this->dbh->prepare('SELECT * FROM task WHERE performer != null LIMIT ?, ?');
  146.         $stmt->bind_param('ss', $from, $count);
  147.         $stmt->execute();
  148.         $result=$stmt->fetch_array(MYSQLI_ASSOC);
  149.        
  150.         return $result;
  151.     }
  152.    
  153.    
  154.     function getUnorderedTasks($count, $from=0)
  155.     {
  156.         $stmt=$this->dbh->prepare('SELECT * FROM task WHERE performer = null LIMIT ?, ?');
  157.         $stmt->bind_param('ss', $from, $count);
  158.         $stmt->execute();
  159.         $result=$stmt->fetch_array(MYSQLI_ASSOC);
  160.        
  161.         return $result;
  162.     }
  163.    
  164.    
  165.     function getCompletedTasks($count, $from=0)
  166.     {
  167.         $stmt=$this->dbh->prepare('SELECT * FROM task WHERE performer = null AND completed != 0 LIMIT ?, ?');
  168.         $stmt->bind_param('ss', $from, $count);
  169.         $stmt->execute();
  170.         $result=$stmt->fetch_array(MYSQLI_ASSOC);
  171.        
  172.         return $result;
  173.     }
  174.    
  175.     function getUnompletedTasks($count, $from=0)
  176.     {
  177.         $stmt=$this->dbh->prepare('SELECT * FROM task WHERE performer = null AND completed != 0 LIMIT ?, ?');
  178.         $stmt->bind_param('ss', $from, $count);
  179.         $stmt->execute();
  180.         $result=$stmt->fetch_array(MYSQLI_ASSOC);
  181.        
  182.         return $result;
  183.     }
  184. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement