public function setActive($token) { 'AND TOKEN = "%s"', $this->uid, { return false; } else { 'AND TOKEN = "%s"', $this->uid, $this->isActive = true; $this->save(); return true; } }
fragment kodu z klasy user, kod dziala tak: gosciu sie rejestruje, jesli wszystkie dane zostaly wpisane poprawnie, jest generowany TOKEN i wysylany do goscia na @ link z zawartym tokenem, gosciu klika na link i jesli id usera oraz token sie zgadza to wpisy z tabeli pending sa kasowe a z kolei w tabeli user gosciu o tym samym ID dostaje oznaczenie rekordu w polu IS_ACTIVE jako true, (domyslnie jest false)... tak powinno byc ale nie jest.. wpis z tabeli pending jest kasowany, ale nie zminia sie nic w polu IS_ACTIVE tabeli user... czy ktos ma jakiś pomysl dla czego tak sie dzieje?
aa i jeszcze funkcja save z tejsamej klasy:
public function save() { if ($this->uid) { $query = sprintf('UPDATE JAKAS_NAZWA_USER SET USERNAME = %s , PASSWORD = %s , EMAIL_ADDR = %s , IS_ACTIVE = %d WHERE USER_ID = %d ', mysql_real_escape_string($this->username, $GLOBALS['DB']), $this->isActive, $this->userId); } else { 'EMAIL_ADDR, IS_ACTIVE) VALUES ("%s", "%s", "%s", %d)', $this->isActive); } }
Pozdrawiam