Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- session_start();
- class login {
- private static $_instance = null;
- protected $MySQLi = null;
- public $Login;
- private function login($LoginData) {
- extract($LoginData);
- $this->Login = new stdClass();
- $this->Login->RESPONSE = false;
- $this->Login->MESSAGE = '';
- $this->initConnection($MySQL);
- $UserData = $this->_sanetizeArray($UserData);
- $this->initLogin($UserData);
- }
- public function getInstance($LoginData) {
- if(is_null(login::$_instance)) {
- login::$_instance = new login($LoginData);
- }
- return login::$_instance;
- }
- protected function initLogin($UserData) {
- extract($UserData);
- $inputCheck = $this->_inputCheck($Username, $Password);
- if($inputCheck == false) {
- $userCheck = $this->_userCheck($Username, $Password);
- if($userCheck == true) {
- if($Remember != false) {
- setcookie('name', $Username, time() + 3600); // 3600 = 1hr
- } else {
- $_SESSION['name'] = $Username;
- }
- $this->Login->MESSAGE = 'You have successfully been logged in.';
- $this->Login->RESPONSE = true;
- } else {
- $this->Login->MESSAGE = 'The username or password is incorrect.';
- }
- } else {
- $this->Login->MESSAGE = 'Do not leave any of the fields empty.';
- }
- }
- protected function initConnection($MySQL) {
- extract($MySQL);
- $this->MySQLi = new mysqli($Hostname, $Username, $Password, $Database);
- if($this->MySQLi != true) {
- exit('Was unable to establish a connection: ' . $this->MySQLi->connect_error);
- }
- }
- private function _userCheck($Username, $Password) {
- $query = $this->MySQLi->query("SELECT * FROM meh_users WHERE Username = '{$Username}' AND Password = '{$Password}' LIMIT 1");
- return ($query->num_rows > 0) ? true : false;
- }
- private function _inputCheck($Username, $Password) {
- if(strlen($Username) == 0 || strlen($Password) == 0) {
- return false;
- }
- return true;
- }
- private function _sanetizeArray($variable) {
- $variable = filter_input_array(INPUT_POST, $variable);
- return $variable;
- }
- }
- if(count($_POST) > 0) {
- $login = login::getInstance(array(
- 'MySQL' => array(
- 'Hostname' => '127.0.0.1',
- 'Username' => 'root',
- 'Password' => 'faq',
- 'Database' => 'mrealms'
- ),
- 'UserData' => array(
- 'Username' => $_POST['name'],
- 'Password' => $_POST['pwd'],
- 'Remember' => (isset($_POST['remember']) ? $_POST['remember'] : false)
- )
- ));
- echo $login->Login->MESSAGE;
- if($login->Login->RESPONSE != false) {
- header('Refresh: 2.5;Url=index.php');
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement