czy taki system logowania jest bezpieczny?
Ewentualnie co jeszcze dodać/zmienić aby ulepszyć go?
login_form.php
<form action="login.php" method="POST" class="form"> <input type="text" id="login"/><br> <input type="password" id="password"/><br> <input type="submit" value="Login"/> </form> <script> $('.form').on('submit', function(e) { var login = $('#login').val(); var password = $("#password").val(); var dataString = 'login='+login+'&password='+ password; $.ajax({ type: 'post', url: ('login.php'), data: dataString, beforeSend: function () { $('body').html('wait...'); }, success: function (obj) { $('body').html(obj); } }); e.preventDefault(); }); </script> login.php [php] <?php $login = $_POST['login']; $password = $_POST['password']; if($_SERVER['REQUEST_METHOD'] == 'POST') { }else{ include('config.php'); connect($adres, $user, $pass, $baza); $result = mysqli_query($link, "SELECT login,ip,mail FROM logowanie_users WHERE login='$login' AND password='$password'"); $count = mysqli_num_rows($result); $row = mysqli_fetch_array($result); $new_ip = $_SERVER['REMOTE_ADDR']; if($count == 1){ $add_ip = $row['ip'].','.$new_ip; $mysql_update_ip = mysqli_query($link, "UPDATE logowanie_users SET ip='$add_ip' WHERE login='$login' AND password='$password'"); echo "Logowanie z nieznanego adresu IP. W celu dodania adresu IP do zaufanych kliknij w link podany w e-mailu i zaloguj się ponownie!"; }else{ $_SESSION['ip'] = $new_ip; $_SESSION['nick'] = $login; } }else{ } disconnect($adres, $user, $pass, $baza); } } ?>
register_form.php
<form action="register.php" method="POST" class="form"> <input type="text" id="login"/><br> <input type="password" id="password"/><br> <input type="password" id="password_confirm"/><br> <input type="email" id="email"/><br> <input type="submit" value="Register"/> </form> <script> $('.form').on('submit', function(e) { var login = $('#login').val(); var email = $("#email").val(); var password = $("#password").val(); var password_confirm = $("#password_confirm").val(); var dataString = 'login='+login+'&email=' + email + '&password=' + password + '&password_confirm=' + password_confirm; $.ajax({ type: 'post', url: ('register.php'), data: dataString, beforeSend: function () { $('body').html('wait...'); }, success: function (obj) { $('body').html(obj); } }); e.preventDefault(); }); </script>
register.php
<?php include('config.php'); $login = $_POST['login']; $password = $_POST['password']; $password_confirm = $_POST['password_confirm']; $email = $_POST['email']; if($_SERVER['REQUEST_METHOD'] == 'POST'){ }elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)){ }elseif($password!=$password_confirm){ }else{ connect($adres, $user, $pass, $baza); $ip = $_SERVER['REMOTE_ADDR']; $sql = "SELECT login FROM logowanie_users WHERE login='$login'"; $result = mysqli_query($link, $sql); $count = mysqli_num_rows($result); if($count!=0){ } $sql = "SELECT mail FROM logowanie_users WHERE mail='$email'"; $result = mysqli_query($link, $sql); $count = mysqli_num_rows($result); if($count!=0){ } mysqli_query($link,"INSERT INTO logowanie_users SET login='$login', password='$password', mail='$email',date='$now',ip='$ip'"); if(mysqli_affected_rows($link) == 1){ } disconnect($adres, $user, $pass, $baza); } } ?>
userpanel.php
<?php } }else{ } ?>