Advertisement
Guest User

Untitled

a guest
Jul 10th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.61 KB | None | 0 0
  1. <?php
  2. class Database
  3. {
  4.     public function connect(){
  5.         $connect = mysql_connect(SBB_DB_HOST,SBB_DB_USER,SBB_DB_PASS);
  6.         if(!$connect)
  7.         {
  8.             echo 'ShrinkBB encountered an error with the following details:' . mysql_error();
  9.             die();
  10.         }
  11.         else
  12.         {
  13.             mysql_select_db(SBB_DB_DATABASE) or echo 'ShrinkBB encountered an error with the following details:' . mysql_error() and die();
  14.         }
  15.     }
  16. }
  17.  
  18. class Session
  19. {  
  20.     // User levels
  21.     var $guest = 0;
  22.     var $member = array();
  23.     var $mod = array();
  24.     var $admin = array();
  25.    
  26.     // Field lengths
  27.     var $user_length = 25;
  28.     var $pass_length = 35;
  29.     var $email_length = 35;
  30.    
  31.     // Duplicate registration
  32.     var $check_user = 1;
  33.     var $check_email = 1;
  34.     var $check_ip = 1;
  35.    
  36.     // Validates registration
  37.     public function register($username,$password,$confirm_password,$email,$ip,$captcha_challenge,$captcha_response)
  38.     {
  39.         Database->connect();
  40.        
  41.         // Checks field lengths
  42.         if(strlen($username)>=$this->user_length)
  43.         {
  44.             return false;
  45.         }
  46.         else if(strlen($password)>=$this->pass_length)
  47.         {
  48.             return false;
  49.         }
  50.         else if(strlen($confirm_password)>=$this->pass_length)
  51.         {
  52.             return false;
  53.         }
  54.         else if(strlen($email)>=$this->email_length)
  55.         {
  56.             return false;
  57.         }
  58.         else
  59.         {
  60.             // Checks if passwords match
  61.             if($password!=$confirm_password)
  62.             {
  63.                 return false;
  64.             }
  65.            
  66.             // Checks if email is valid
  67.             else if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$",$email))
  68.             {
  69.                 return false;
  70.             }
  71.            
  72.             else
  73.             {
  74.                 // Checks if username, email, or IP was taken.
  75.                 if($this->check_user==1)
  76.                 {
  77.                     $username = base64_encode($username);
  78.                     $sql = mysql_query("SELECT * FROM " . SBB_DB_PREFIX . "users WHERE username='$username'");
  79.                     if(mysql_num_rows($sql)>=1)
  80.                     {
  81.                         return false;
  82.                     }
  83.                     else
  84.                     {
  85.                         return true;
  86.                     }
  87.                 }
  88.                 else if($this->check_email==1)
  89.                 {
  90.                     $email = base64_encode($email);
  91.                     $sql = mysql_query("SELECT * FROM " . SBB_DB_PREFIX . "users WHERE email='$email'");
  92.                     if(mysql_num_rows($sql)>=1)
  93.                     {
  94.                         return false;
  95.                     }
  96.                     else
  97.                     {
  98.                         return true;
  99.                     }
  100.                 }
  101.                 else if($this->check_ip==1)
  102.                 {
  103.                     $ip = base64_encode($ip);
  104.                     $sql = mysql_query("SELECT * FROM " . SBB_DB_PREFIX . "users WHERE ip='$ip'");
  105.                     if(mysql_num_rows($sql)>=1)
  106.                     {
  107.                         return false;
  108.                     }
  109.                     else
  110.                     {
  111.                         return true;
  112.                     }
  113.                 }
  114.                 else
  115.                 {
  116.                     if(SBB_RECAPTCHA==1)
  117.                     {
  118.                         if(SBB_RECAPTCHA_PUBLIC=="")
  119.                         {
  120.                             return false;
  121.                         }
  122.                         else if(SBB_RECAPTCHA_PRIVATE=="")
  123.                         {
  124.                             return false;
  125.                         }
  126.                         else
  127.                         {
  128.                             $check_captcha = recaptcha_check_answer(SBB_RECAPTCHA_PRIVATE,$ip,$captcha_challenge,$captcha_response);
  129.                             if(!$check_captcha->is_valid)
  130.                             {
  131.                                 return false;
  132.                             }
  133.                             else
  134.                             {
  135.                                 return true;
  136.                             }
  137.                         }
  138.                     }
  139.                     else
  140.                     {
  141.                         return true;
  142.                     }
  143.                 }
  144.             }
  145.         }
  146.     }
  147.    
  148.     // Validates login
  149.     public function login($username,$password,$remember)
  150.     {
  151.         Database->connect();
  152.    
  153.         // Checks field lengths
  154.         if(strlen($username)>=$this->user_length)
  155.         {
  156.             return false;
  157.         }
  158.         else if(strlen($password)>=$this->pass_length)
  159.         {
  160.             return false;
  161.         }
  162.         else
  163.         {
  164.             // Checks to see if user exists
  165.             $username = base64_encode($username);
  166.             $password = md5($password);
  167.             $sql = mysql_query("SELECT * FROM " . SBB_DB_PREFIX . "users WHERE username='$username' AND password='$password'");
  168.             if(mysql_num_rows($sql)==1)
  169.             {
  170.                 return true;
  171.             }
  172.             else
  173.             {
  174.                 return false;
  175.             }
  176.         }
  177.     }
  178. }
  179. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement