public function activation($kod) { $sql_check = "SELECT * FROM `users` WHERE `kod`='$kod' and `aktywacja`='1'"; $sql_update = "UPDATE `users` SET `aktywacja`='1' WHERE `kod`='$kod' and `aktywacja`='0'"; if($stmt > 0) { } else { } }
Połączenie z bazą jest, zapytanie $sql_update działa na 100% bo wklepywałem je bez warunków i aktywuje konto, coś jest nie tak z $sql_check.
Połączenie UPDATE działa, a już np w warunkach if nie, w tym przykładzie nie wykona się NIC, nie wyświetli się żaden błąd sql ani php, składnia więc jest "teoretycznie ok", zapytanie $sql_check na bank nie działa jak powinno (szukałem literówek i nic).
Powinno być tak skrypt sprawdza czy konto z danym kodem ma już aktywację (w bazie danych 1) i to jest warunek, funkcja exec sprawdza ilość wyników zapytania, w tym przypadku nawet gdy podaje kod i w bazie jest 0 to zawsze zwraca wynik 0 dla zapytania $sql_check, no ok ale skoro dało 0 to powinno wykonać się else czyli aktywacja konta, podczas gdy ten zabieg nie wykonuje się, mimo że $this->pdo -> exec($sql_update); działa.
Na pewno jest to jakaś głupota, ale siedzę przy tym i siedzę i nie mogę znaleźć błędu...