POST表单不与PHP一起使用,与Postman合作

Tar*_*iad 2 css php mysqli twitter-bootstrap

这是带会话的登录代码.我使用bootstrap.代码没有重定向到index.html,当我在Postman中测试它工作但它不能在这个bootstrap模板中工作.我没理由?请帮忙

<?php

if($_SERVER["REQUEST_METHOD"]=="POST") {
    $email=$_POST["email"];
    $password=$_POST["password"];

    $sql = "SELECT * FROM login where email='$email' and password='$password'";

    $result = mysqli_query($conn,$sql);
    $row=mysqli_fetch_array($result,MYSQLI_ASSOC);
    $count = mysqli_num_rows($result);

    if ($count>0) {

        // output data of each row
        if($row['admin_role']==1) {
            //$_SESSION["email"]=$email;
            //$_SESSION["id"]=$row['user_id'];

            //echo "Login successfull";

            header('Location: index.html');
            exit; 
        }
    } else {
        echo "0 results";
    }
}

?>


<div class="row">
    <div class="col-xs-10 col-xs-offset-1 col-sm-8 col-sm-offset-2 col-md-4 col-md-offset-4">
        <div class="login-panel panel panel-default">
            <div class="panel-heading"> Admin Log in</div>
            <div class="panel-body">
                <form role="form">
                    <fieldset>
                        <div class="form-group">
                            <input class="form-control" placeholder="E-mail" name="email" type="email" autofocus="">
                        </div>
                        <div class="form-group">
                            <input class="form-control" placeholder="Password" name="password" type="password" value="">
                        </div>
                        <div class="checkbox">
                            <label>
                                <input name="remember" type="checkbox" value="Remember Me">Remember Me
                            </label>
                        </div>
                        <a href="" class="btn btn-primary">Login</a>
                    </fieldset>
                </form>
            </div>
        </div>
    </div><!-- /.col-->
</div><!-- /.row --> 
Run Code Online (Sandbox Code Playgroud)

Ove*_*der 6

您的形式是GET的形式,你需要设置method="POST"你的<form>标签.

除此之外,您的代码非常容易受到攻击,您应该在数据库中对密码进行哈希处理,并且应该使用PDO,因为它更安全,您还应该使用预准备语句并使用它来关闭模拟语句.

目前,您的代码容易受到SQL注入攻击,这是Web应用程序最基本但最危险的安全威胁之一.