MySQL简单运行的小游戏
时间: 2023-08-08 08:12:35 浏览: 158
mysql的简单应用
好的,我可以为你介绍一个简单的 MySQL 小游戏:猜数字游戏。
这个游戏的规则很简单,你需要从 1 到 100 中猜一个数字,如果你猜的数字与系统生成的数字相同,你就赢了。如果你猜的数字比系统生成的数字大或小,系统会告诉你需要再猜一个更大或更小的数字。你可以在 MySQL 中创建一个表,用于存储游戏的状态和玩家的猜测记录。
下面是一个简单的 MySQL 表结构示例:
```
CREATE TABLE guess_game (
id INT NOT NULL AUTO_INCREMENT,
player_name VARCHAR(255),
generated_number INT,
guess_number INT,
guess_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
);
```
在这个表中,`id` 列是自增的主键,`player_name` 列用于存储玩家的名字,`generated_number` 列用于存储系统生成的数字,`guess_number` 列用于存储玩家猜测的数字,`guess_time` 列用于存储猜测时间。
下面是一个简单的 PHP 脚本示例,用于实现猜数字游戏的逻辑:
```
<?php
session_start();
if (!isset($_SESSION['generated_number'])) {
// 生成一个随机数字
$_SESSION['generated_number'] = rand(1, 100);
}
if (isset($_POST['guess_number'])) {
// 获取玩家猜测的数字
$guess_number = intval($_POST['guess_number']);
// 将猜测记录插入 MySQL 数据库
$conn = mysqli_connect('localhost', 'username', 'password', 'database');
$player_name = mysqli_real_escape_string($conn, $_SESSION['player_name']);
$generated_number = $_SESSION['generated_number'];
$guess_time = date('Y-m-d H:i:s');
$query = "INSERT INTO guess_game (player_name, generated_number, guess_number, guess_time) VALUES ('$player_name', $generated_number, $guess_number, '$guess_time')";
mysqli_query($conn, $query);
// 判断玩家猜测的数字是否正确
if ($guess_number == $_SESSION['generated_number']) {
echo "Congratulations! You win!";
// 重置游戏状态
unset($_SESSION['generated_number']);
} elseif ($guess_number < $_SESSION['generated_number']) {
echo "Your guess is too small. Please guess a bigger number.";
} else {
echo "Your guess is too big. Please guess a smaller number.";
}
}
?>
<form method="post">
<label for="guess_number">Please guess a number between 1 and 100:</label>
<input type="number" id="guess_number" name="guess_number" min="1" max="100" required>
<button type="submit">Guess</button>
</form>
```
请注意,这只是一个简单的示例,实际的游戏可能需要更复杂的逻辑和更完善的用户界面。
阅读全文