napisałem dziś logowanie. Napiszcie czy jest ok? Ogólnie działa ale, że działa to nie wszystko. Co byście zmienili? Co robię źle i bez sensu? czy idea jest oki? Czy idzie ten kod jakoś obejść i wejść mimo logowania na stronę?
poniżej kod z komentarzem
<?php include ('db/conection.php'); // łącze się z db za pomocą PDO include('querries/confQuerries.php'); // tutaj plik z zapytaniami SQL $howMany = $dbh -> query($COUNT_LOGIN_USERS); // tutaj zapytanie count(*) where $_POST['login'] foreach( $howMany as $k ) { $count = $k[0]; } if ( $count == 1 ) // jeśli zapytanie zwróciło jeden wiersz { foreach ( $dbh -> query( $SELECT_USER ) as $row ) // wybieram wszystkie dane usera where $_POST['login'] { if ( $_POST['login'] == $row[1] && $_POST['pass'] == $row[2] ) // jeśli wpisany login odpowiada loginowi w bazie i wpisane haslo odpowiada temu z bazy przypisuje wynik zapytania do sesji { $_SESSION['id'] = $row[0]; $_SESSION['login'] = $row[1]; $_SESSION['pass'] = $row[2]; $_SESSION['name'] = $row[3]; $_SESSION['surname'] = $row[4]; $_SESSION['nickname'] = $row[5]; $_SESSION['level'] = $row[6]; $_SESSION['xlid'] = $row[7]; $_SESSION['region'] = $row[8]; $_SESSION['logIn'] = 1; $loginAim = $output[year] . '-' . $output[mon] . '-' . $output[mday] . ', ' . $output[hours] . ':' . $output[minutes] . ':' . $output[seconds]; include('querries/confQuerries.php'); if ( $_SESSION['xlid'] != 5555555 ) // nie loguje ADMINA { $dbh -> query( $INSERT_LOGGED_USER ); // log kto i kiedy sie zalogował foreach( $dbh -> query( $SELECT_LAST_INSERT_ID_PER_USER ) as $row ) { $_SESSION['sessionIdLogger'] = $row[0]; } } exit; }else { header( 'Location: http://' . $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/') . '/' . index.'.'.php ); // jeśli coś nie tak to kieruje na stronę logowania exit; } } ?>