Witam. Mam problem z funkcją password_verify w moim projekcie. Na lokalnym serwerze wszystko działało, wykupiłem domenę i z niczego się zepsuło i funkcja cały czas wywala FALSE. Chcę zalogować się za pomocą loginu i hasla z bazy, zapytanie pobiera doby hash ale funkcja i tak wywala błąd. Poniżej podaje 2 funkcje, jedna do rejestracji i wrzucenia danych do bazy a druga do logowania.
public function dodajUzytkownika() {
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$loginn = $_POST['login'];
$haslo = password_hash($_POST['password'], PASSWORD_DEFAULT);
$wojewodztwo = $_POST['wojewodztwo'];
$powiat = $_POST['powiat'];
$miejscowosc = $_POST['miejscowosc'];
$adres = $_POST['nr_domu'].$miejscowosc;
$kod = $_POST['kod'];
$poczta = $_POST['poczta'];
$zapytanie = "INSERT INTO uzytkownicy (uzytkownicyID, imie, nazwisko, wojewodztwaID, powiatyID, miejscowosc, adres, poczta, kod, login,
haslo) VALUES(NULL, '$imie', '$nazwisko', '$wojewodztwo', '$powiat', '$miejscowosc', '$adres', '$poczta',
'$kod', '$loginn', '$haslo')";
$obiekt = new Model();
$obiekt->polaczenie->query($zapytanie);
header("Location:
http://mmwebsites.pl/index.php?c=mainController&f=start");
$data = NULL;
}
public function zaloguj() {
$login = $_POST['login'];
$password = $_POST['password'];
$obiekt = new Model();
$zapytanie = "SELECT haslo FROM uzytkownicy WHERE login='$login'";
$rezultat = $obiekt->polaczenie->query($zapytanie);
$row = $rezultat->fetch_assoc();
$hash = $row['haslo'];
if (password_verify($hash, $password )) {
$zapytanie = "SELECT * FROM uzytkownicy WHERE login='$login' AND haslo='$hash'";
$result = $obiekt->polaczenie->query($zapytanie);
if($result->num_rows > 0)
{
$_SESSION['kto'] = $login;
$_SESSION['status'] = true;
}
} else {
$_SESSION['status'] = false;
}
header("Location:
http://mmwebsites.pl/index.php?c=mainController&f=start");
}