Advertisement
Underworld1337

Untitled

Jul 31st, 2016
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.61 KB | None | 0 0
  1.     public function createAccount($user, $pw, $repeat, $email, $invitecode = '', $override = false){
  2.       $s = true;
  3.       if(!$override)
  4.       // general
  5.       if(empty($user) || empty($pw) || empty($repeat) || empty($email)){
  6.         self::addOutput("Fehler|Du musst alle Felder ausüllen");
  7.         $s = false;
  8.       }
  9.      
  10.       if($user == $pw){
  11.         self::addOutput("Fehler|Dein Passwort darf nicht mit deinem Benutzernamen identisch sein.");
  12.         $s = false;
  13.       }
  14.      
  15.       // Name
  16.       if(self::checkname($user) !== true){
  17.         self::addOutput("Fehler|Name fehlerhaft oder in Verwendung.<br>Mindestens 3 Zeichen - Maximal 12 Zeichen<br>Erlaubte Zeichen: a-z A-Z 0-9");
  18.         $s = false;
  19.       }
  20.      
  21.       // pw
  22.       if($pw != $repeat){
  23.         self::addOutput("Fehler|Passwรถrter stimmen nicht &uuml;berein");
  24.         $s = false;
  25.       }
  26.      
  27.       if(strlen($pw) > 50 || strlen($pw) < 8){
  28.         self::addOutput("Fehler|Passwortl&auml;nge fehlerhaft.<br>Mindestens 8 Zeichen - Maximal 50 Zeichen");
  29.         $s = false;
  30.       }
  31.      
  32.       //email
  33.       $qry = $this->con->prepare('SELECT email FROM users WHERE email = :mail');
  34.       $qry->bindParam(':mail', $email, PDO::PARAM_STR);
  35.       $qry->execute();
  36.       if($qry->rowCount () != 0){
  37.         self::addOutput("Fehler|Mail-Adresse wird verwendet");
  38.         $s = false;
  39.       }
  40.  
  41.       if (self::validate_email($email) != true) {
  42.         self::addOutput("Fehler|Mail-Adresse scheint ung&uuml;ltig zu sein");
  43.         $s = false;
  44.       }
  45.      
  46.       // invite // TODO
  47.       if($this->invite_only === true && empty($invitecode)){
  48.         self::addOutput("Fehler|Du hast keinen Invitecode eingegeben");
  49.         $s = false;
  50.       }elseif($this->invite_only === false){
  51.         $invitecode = 'nocode';
  52.       }
  53.      
  54.       if($s){
  55.      
  56.        
  57.         //process data
  58.         $passhash = md5($pw);
  59.         $time = self::getTS();
  60.    
  61.         //insert new user
  62.         $qry = $this->con->prepare("INSERT INTO users (`name`, `email`, `passhash`, `invitecode`, `registration_ts`)
  63.                                                VALUES (:name, :email, :passhash, :invitecode, :rts)");
  64.         $qry->bindParam(':name', $user, PDO::PARAM_STR);
  65.         $qry->bindParam(':email', $email, PDO::PARAM_STR);
  66.         $qry->bindParam(':passhash', $passhash, PDO::PARAM_STR);
  67.         $qry->bindParam(':invitecode', $invitecode, PDO::PARAM_STR);
  68.         $qry->bindParam(':rts', $time, PDO::PARAM_INT);
  69.        
  70.       if($qry->execute()){
  71.         self::addOutput("Erfolg|Account wurde angelegt", false);
  72.         self::setNextPage("homeinternal",3);
  73.       }else{
  74.         self::addOutput("Fehler|Account konnte nicht angelegt werden");
  75.         self::setNextPage("home",3);
  76.       }
  77.     }else{
  78.         self::setNextPage("home");
  79.       }
  80.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement