ACC SHELL
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
//trida uzivatel manipuluje s daty o uzivateli
class user{
private $username=NULL;//prihlasovaci jmeno
private $pass=NULL;//heslo
private $typ_id=NULL;//prava
private $name=NULL;//jmeno
private $surname=NULL;//prijmeni
private $id=NULL;//id uzivatele
//begin funkce vracejici privatni vlastnosti tridy user
public function getUsername(){
return $this->username;
}
public function getId(){
return $this->id;
}
public function getTypId(){
return $this->typ_id;
}
public function getName(){
return $this->name;
}
public function getSurName(){
return $this->surname;
}
//end funkce vracejici privatni vlastnosti tridy user
//overi zda uzivatel s prihlasovacim jmenem username a heslem pass je v databazi, pokud ano naplni privatni vlastnosti z databaze
public function __construct($username, $pass) {
if ($this->check($username, $pass)){
$this->selectUser($username);
};
}
//overi zda uzivatel s prihlasovacim jmenem username a heslem pass je v databazi
public static function check($username, $pass){
if(!empty($username) && !empty($pass)){
$query = "SELECT pass FROM ".DBPREFIX."users WHERE username = '$username'";
$send = mysql_query($query);
$data = mysql_fetch_array($send);
if($pass === $data['pass'])
return true;
else
return false;
}
else
return false;
}
//overi zda uzivatel s prihlasovacim jmenem username a heslem pass je admin
public static function checkAdmin($username, $pass){
if(!empty($username) && !empty($pass)){
$query = "SELECT pass FROM ".DBPREFIX."users WHERE username = '$username' AND typ_id=1";
$send = mysql_query($query);
$data = mysql_fetch_array($send);
if($pass === $data['pass'])
return true;
else
return false;
}
else
return false;
}
//nalezne informace o uzivateli s danym prihlasovacim jmenem a naplni jimi privatni vlastnosti
public function selectUser($username){
$query = "SELECT * FROM ".DBPREFIX."users where username = '$username'";
$sent = mysql_query($query);
$this->setUser($sent);
}
//naplni privatni vlastnosti tridy user informacema z databaze o uzivatelich username
public function setUser($sent){
$data = mysql_fetch_array($sent);
$this->username=$data['username'];
$this->pass=$data['pass'];
$this->typ_id=$data['typ_id'];
$this->id=$data['id'];
$this->name=$data['name'];
$this->surname=$data['surname'];
}
//zkontroluje zda uzivatel s prihlasovacim jmenem $username jiz neexistuje
public static function exist_user($username){
$query = "SELECT username FROM ".DBPREFIX."users where username = '".$username."'";
$sent = mysql_query($query);
$data = mysql_fetch_array($sent);
if ($data['username']) return true;
else{
return false;
}
}
//po overeni hesla pro dany username naplni privatni vlastnosti instance z databaze a vytvori seesion promene
public function login($username, $pass, $loginName){
if(isset ($loginName) && $loginName===''){//nelze se prihlasit s prazdnym prihlasovacim jmenem
return LOGIN_USER_EMPTY;
}
$pass=md5($pass);
if ($this->check($username, ($pass))){
$this->selectUser($username);
$_SESSION['partner']['username']=$username;
$_SESSION['partner']['pass']=$pass;
$_SESSION['partner']['loginName']=$loginName;
return LOGIN_SUCCESSFUL;
}
else{
return LOGIN_UNSUCCESSFUL;
}
}
//provede odhlaseni uzivatele
public function logout(){
unset($_SESSION['partner']['username']);
unset($_SESSION['partner']['pass']);
unset($_SESSION['partner']['loginName']);
return LOGOUT_SUCCESSFUL;
}
}
?>
ACC SHELL 2018