以下是一个简单的PHP登录验证入口示例,包括使用验证码的登录界面:
<?php
session_start();
// 检查用户是否已经登录,如果已登录则跳转到首页
if(isset($_SESSION['loggedin']) && $_SESSION['loggedin'] === true){
header("location: index.php");
exit;
}
// 检查用户是否提交了登录表单
if($_SERVER["REQUEST_METHOD"] == "POST"){
// 检查验证码是否正确
if($_POST['captcha'] != $_SESSION['captcha']){
$captcha_err = "验证码错误";
}else{
// 执行其他登录验证逻辑
// ...
// 设置登录状态
$_SESSION['loggedin'] = true;
// 跳转到首页
header("location: index.php");
exit;
}
}
// 生成随机验证码
$captcha = rand(1000,9999);
$_SESSION['captcha'] = $captcha;
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登录</title>
</head>
<body>
<h2>登录</h2>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
<div>
<label for="username">用户名</label>
<input type="text" name="username" id="username">
</div>
<div>
<label for="password">密码</label>
<input type="password" name="password" id="password">
</div>
<div>
<label for="captcha">验证码</label>
<input type="text" name="captcha" id="captcha">
<span><?php echo $captcha_err; ?></span>
</div>
<div>
<input type="submit" value="登录">
</div>
</form>
</body>
</html>
上述代码中,首先检查用户是否已经登录,如果已登录则跳转到首页。然后检查用户是否提交了登录表单,如果是,则检查验证码是否正确。如果验证码正确,则执行其他登录验证逻辑,并设置登录状态为true,最后跳转到首页。
登录界面包含用户名、密码和验证码的输入框,用户需要输入正确的验证码才能进行登录。验证码通过rand(1000,9999)生成,并存储在$_SESSION['captcha']中,用于后续的验证。如果验证码错误,会显示错误信息提示用户重新输入。
上一篇:php 减法for循环
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站