我有两个表,一个是
我正在尝试创建一个
如果有人能解释一下我该如何做,我将非常感激。
表格:
members
,另一个是games
。在members
表中存储着member_id
、first_name
、last_name
等数据。我正在尝试创建一个
games
表格的表单,用户可以输入参与人员的名字和姓氏(不分开),然后一些PHP代码会查询这个名字,找到相应的ID并将其存储起来。当然,member_id
是games
表格的外键,但用户不会知道成员的ID,他们只知道他们的姓名。如果有人能解释一下我该如何做,我将非常感激。
表格:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Form</title>
</head>
<body>
<form action="action.php" method="post">
<p>
<label for="date">Date:</label>
<input type="date" name="date" id="date">
</p>
<p>
<label for="duration">Duration:</label>
<input type="time" name="duration" id="duration">
</p>
<p>
<label for="member_id">Member Name:</label>
<input type="text" name="member_id" id="member_id">
</p>
<input type="submit" value="Submit">
</form>
</body>
</html>
操作:
<?php
// database connection
include 'pdo_config.php';
try {
// new pdo connection
$conn = new PDO($dsn, $user, $pass, $opt);
// prepare statement and bind parameters
$stmt = $conn->prepare("INSERT INTO games (date, duration, member_id)
VALUES (:date, :duration, :member_id)");
$stmt->bindParam(':date', $date);
$stmt->bindParam(':duration', $duration);
$stmt->bindParam(':member_id', $member_id);
// post data
$date = $_POST['date'];
$duration = $_POST['duration'];
$member_id = $_POST['member_id'];
// execute statement
$stmt->execute();
// success or error message
echo "New record created successfully";
}
catch(PDOException $e)
{
echo "Error: " . $e->getMessage();
}
$conn = null;
?>