PHP实现简单卡密充值功能示例

通过PHPMySQL实现的卡密充值功能非常简单且易于理解。下面是实现这一功能的完整代码示例:

  1. 创建数据库表格 cards 用于存储卡密信息:
CREATE TABLE cards (
  id INT AUTO_INCREMENT PRIMARY KEY,
  card_code VARCHAR(255) UNIQUE NOT NULL,
  balance INT NOT NULL,
  status ENUM('unused', 'used') DEFAULT 'unused'
);
  1. 编写PHP脚本:
<?php
$host = 'localhost';
$db = 'test_db';
$user = 'root';
$pass = '';

try {
    $pdo = new PDO("mysql:host=$host;dbname=$db", $user, $pass);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

// 输入卡密进行充值
if (isset($_POST['card_code'])) {
    $card_code = $_POST['card_code'];
    $stmt = $pdo->prepare('SELECT * FROM cards WHERE card_code = :card_code AND status = "unused"');
    $stmt->execute(['card_code' => $card_code]);
    $card = $stmt->fetch();

    if ($card) {
        $stmt = $pdo->prepare('UPDATE cards SET status = "used" WHERE card_code = :card_code');
        $stmt->execute(['card_code' => $card_code]);
        echo '充值成功!余额:' . $card['balance'] . '元';
    } else {
        echo '卡密无效或已使用';
    }
}
?>
  1. 提交卡密进行充值:
<form method="POST">
    
    <input name="card_code" required="" type="text"/>
    <button type="submit">充值</button>
</form>

通过这个简单的实现,用户可以输入卡密进行充值,并且后台通过数据库验证卡密的有效性。每次成功使用卡密后,系统会更新其状态为“已使用”。

php 文件大小:2.23KB