Autor | Zpráva | ||
---|---|---|---|
Tirus Profil |
#1 · Zasláno: 8. 4. 2011, 20:13:51 · Upravil/a: Tirus
Jde o to, že mám funkci na registraci, ovšem podmínky mi nějak nevychází, koukám na to celkem půl hodiny a nemohu najít nesrovnalost.
Zvýrazněně je podmínka co "lže" :) public function register($login, $password, $email, $name, $msn, $icq) { $passwordHash = $this->generatePasswordHash($password, $login); $ssid = $this->generateSessionId($passwordHash, $login); $this->firstUserSettings($ssid); if ($this->checkEmail($email)) { if (!$this->checkNumOfUsers($login) OR !$this->checkNumOfEmails($email)) { return (bool)dibi::query('INSERT INTO [' . DB_PREFIX . 'users]', array('nick' => $login, 'password' => $passwordHash, 'email' => $email, 'name' => $name, 'icq' => $icq, 'msn' => $msn, 'ssid' => $ssid, )); } else { if ($this->checkNumOfUsers($login)) $this->error = 'Uživatelské jméno už je používání.< br />\n'; if ($this->checkNumOfEmails($email)) $this->error = 'Email už je používán. < br />\n'; return false; } } else { $this->error = 'Email je ve špatném tvaru.'; return false; } } /** * Kontrola tvaru emailu */ private function checkEmail($email) { return ereg("^.+@.+\..+$", $email); } /** * Kontrola poctu uzivatelu */ private function checkNumOfUsers($login) { return (bool)dibi::query('SELECT * FROM [' . DB_PREFIX . 'users] WHERE [nick] = %s', $login); } /** * Kontrola poctu mailu */ private function checkNumOfEmails($email) { return (bool)dibi::query('SELECT * FROM [' . DB_PREFIX . 'users] WHERE [email] = %s', $email); } |
||
Tirus Profil |
#2 · Zasláno: 8. 4. 2011, 20:19:51
nalezeno, volal jsem prvotní nastavení uživatele ještě před podmínkou :( .. pardon za zbytečné vlákno
|
||
Časová prodleva: 13 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0