PHP 手机验证注册是一种常见的用户注册方式,通过向用户的手机发送验证码来验证用户的身份,确保注册信息的真实性和安全性。
以下是一个简单的 PHP 手机验证码注册示例:
<?php
// 数据库连接
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 发送验证码
function sendVerificationCode($phone) {
$code = rand(100000, 999999); // 生成6位随机验证码
// 这里可以使用短信服务提供商的API发送短信
// 例如:使用腾讯云短信服务
// https://cloud.tencent.com/document/product/382/5976
echo "验证码已发送到手机:" . $phone . ",验证码为:" . $code;
return $code;
}
// 注册处理
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$phone = $_POST['phone'];
$code = $_POST['code'];
// 验证码有效期为5分钟
$valid_until = time() + 300;
// 检查验证码是否正确
if ($code == $_SESSION['verification_code'] && time() < $valid_until) {
// 验证通过,保存用户信息到数据库
$sql = "INSERT INTO users (phone) VALUES ('$phone')";
if ($conn->query($sql) === TRUE) {
echo "注册成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
} else {
echo "验证码错误或已过期";
}
}
// 发送验证码页面
if ($_SERVER["REQUEST_METHOD"] == "GET") {
$phone = $_GET['phone'];
$_SESSION['verification_code'] = sendVerificationCode($phone);
}
$conn->close();
?>通过以上步骤,可以实现一个基本的 PHP 手机验证注册功能。根据实际需求,可以进一步优化和完善。