如何将repatcha集成到php登录表单中

时间:2017-05-23 06:06:49

标签: recaptcha

您好我想知道是否有人可以帮我将recaptcha整合到现有的登录表单中。

这是我的表单代码:

    <body>
  <div id="page-loader"></div>
        <!-- Login Content -->
        <div class="content overflow-hidden">
            <div class="row">
                <div class="col-sm-8 col-sm-offset-2 col-md-6 col-md-offset-3 col-lg-4 col-lg-offset-4">
                    <!-- Login Block -->
                    <div class="block block-themed animated fadeIn">
                        <div class="block-header bg-primary">
                            <ul class="block-options">
                                <!-- Soon
                                <li>
                                    <a href="#">Forgot Password?</a>
                                </li>-->
                                <li>
                                    <a href="<?php echo $boardurl; ?>register.php" data-toggle="tooltip" data-placement="left" title="New Account"><i class="si si-plus"></i></a>
                                </li>
                            </ul>
                            <h3 class="block-title">Login</h3>
                        </div>
                        <div class="block-content block-content-full block-content-narrow">
                            <!-- Login Title -->
                            <h1 class="h2 font-w600 push-30-t push-5"><?php echo $website; ?></h1>
                            <p>Welcome, please login.</p>
                            <!-- END Login Title -->

                            <!-- Login Form -->


                            <form class="js-validation-login form-horizontal push-30-t push-50" action="<?php echo $boardurl; ?>login.php" method="POST">
                                <div class="form-group">
                                    <div class="col-xs-12">
                                        <div class="form-material form-material-primary floating">
                                            <input class="form-control" type="text" id="login-username" name="username">
                                            <label for="login-username">Username</label>
                                        </div>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <div class="col-xs-12">
                                        <div class="form-material form-material-primary floating">
                                            <input class="form-control" type="password" id="login-password" name="password">
                                            <label for="login-password">Password</label>
                                        </div>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <div class="col-xs-12 col-sm-6 col-md-4">
                                        <div class="g-recaptcha" data-sitekey="<?php echo $publickey; ?>"></div>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <div class="col-xs-12">
                                        <label class="css-input switch switch-sm switch-primary">
                                            <input type="checkbox" id="login-remember-me" name="login-remember-me"><span></span> Remember Me?
                                        </label>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <div class="col-xs-12 col-sm-6 col-md-4">
                                        <button class="btn btn-block btn-primary" type="submit"><i class="si si-login pull-right"></i> Log in</button>
                                    </div>
                                </div>
                            </form>
                            <!-- END Login Form -->
                        </div>
                    </div>
                    <!-- END Login Block -->
                </div>
            </div>
        </div>
        <!-- END Login Content -->

在页脚中我添加了这个

<script src='https://www.google.com/recaptcha/api.js'></script>

以已添加的形式

<div class="g-recaptcha" data-sitekey="<?php echo $publickey; ?>">

plubic键通过设置字段存储在db中。

现在我需要将帖子侧与我的帖子代码

集成

这是我的邮政编码:

    if(isset($_POST['username']) && isset($_POST['password'])){

    $username = mysqli_real_escape_string($con, $_POST['username']);
    $password = mysqli_real_escape_string($con, md5($_POST['password']));

    $result = mysqli_query($con, "SELECT * FROM `users` WHERE `username` = '$username'") or die(mysqli_error($con));
    if(mysqli_num_rows($result) < 1){
        header("Location: login.php?error=incorrect-password");
    }
    while($row = mysqli_fetch_array($result)){
        if($password != $row['password']){
            header("Location: login.php?error=incorrect-password");
        }elseif($row['status'] == "0"){
            header("Location: login.php?error=banned");
        }else{
            $_SESSION['id'] = $row['id'];
            $_SESSION['username'] = $username;
            $_SESSION['email'] = $row['email'];
            $_SESSION['rank'] = $row['rank'];
            $_SESSION['active'] = $_SESSION['active'];
            header("Location: index.php");
        }
    }

}

我非常感谢你能给我的帮助。

1 个答案:

答案 0 :(得分:0)

你能用这个作曲家吗? https://github.com/google/recaptcha

如果是这样,它可以大大简化你的生活,你可以举例说明如何验证用户的反应。

如果您不能帮助我做更详细的解释,请告诉我。