Advertisement
Guest User

Untitled

a guest
Aug 1st, 2017
397
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.37 KB | None | 0 0
  1. <?php
  2. class Register
  3. {
  4.   private $username;
  5.   private $password;
  6.   private $salt;
  7.   private $passmd5;
  8.   private $dynsalt;
  9.   private $passcrypted;
  10.  
  11.   private $errors;
  12.   private $token;
  13.  
  14.   public function __construct()
  15.   {
  16.     $this->errors = array();
  17.  
  18.     $this->username = $this->$_POST['user'];
  19.     $this->username = strtolower($this->username);
  20.     $this->username = ucwords($this->username);
  21.    
  22.     $this->password = $this->$_POST['pass'];
  23.     $this->token    = $_POST['token'];
  24.     $this->salt     = "hhjhkjjughnbhgg783bg873378b9873**^`?";
  25.    
  26.     $this->passmd5  = md5($this->password);
  27.     $this->dynsalt = sha1($this->username.$this->passmd5.$this->salt);
  28.     $this->passcrypted = sha1($this->dynsalt);
  29.   }
  30.  
  31.   public function process()
  32.   {
  33.     if($this->valid_token() && $this->valid_data())
  34.          $this->register();
  35.  
  36.     return count($this->errors)? 0 : 1;
  37.   }
  38.  
  39.   public function register()
  40.   {
  41.    mysql_connect("localhost","root","") or die(mysql_error());
  42.    mysql_select_db("databas") or die (mysql_error());
  43.    
  44.  
  45.    mysql_query("INSERT INTO users(username,password) VALUES ('{$this->username}','{$this->passcrypted}')");
  46.  
  47.    if(mysql_affected_rows()< 1)
  48.      $this->errors[] = 'Hmm något är fel';
  49.   }
  50.  
  51.   public function user_exists()
  52.   {
  53.     mysql_connect("localhost","root","") or die(mysql_error());
  54.     mysql_select_db("databas") or die (mysql_error());
  55.  
  56.     $data = mysql_query("SELECT ID FROM users WHERE username = '{$this->username}'");
  57.  
  58.     return mysql_num_rows($data)? 1 : 0;
  59.   }
  60.  
  61.   public function show_errors()
  62.   {
  63.     echo "<h3>Fel:</h3>";
  64.  
  65.     foreach($this->errors as $key=>$value)
  66.       echo $value."<br>";
  67.   }
  68.  
  69.   public function valid_data()
  70.   {
  71.     if($this->user_exists())
  72.       $this->errors[] = 'Användarnamnet är upptaget';
  73.      
  74.     if (!preg_match('/^[a-z0-15]{3,10}$/i', $this->username))
  75.       $this->errors[] = 'Du får bara ha bokstäver och siffror i användarnamnet.<br/>Och det måste vara mellan 3 och 10 tecken.';
  76.  
  77.     if(empty($this->username))
  78.       $this->errors[] = 'Ogiltigt användarnamn';
  79.     if(empty($this->password))
  80.       $this->errors[] = 'Ogiltigt lösenord';
  81.  
  82.   return count($this->errors)? 0 : 1;
  83.   }
  84.  
  85.  
  86.   public function valid_token()
  87.   {
  88.    if(!isset($_SESSION['token']) || $this->token != $_SESSION['token'])
  89.      $this->errors[] = 'Haxxor fel';
  90.  
  91.    return count($this->errors)? 0 : 1;
  92.   }
  93. }
  94.  
  95. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement