我想使用复选框对我的网站上的个人资料进行设置。这些复选框也有效,但我不断收到此错误:Fatal error : Uncaught mysqli_sql_exception: Column 'match_role_id' cannot be null
这可能是因为应在其中输入值的表是一个临时表,其中包含来自其他两个表的两个 ID。如果我将这两个值的默认值设置为NULL,则会出现无限循环。
我怎样才能解决这个问题?
功能:
function add_team_match_role() {
global $connection;
if(isset($_POST['add_match_roles'])) {
$match_role_checkbox = $_POST['match_role_check'];
$team_id = escape($_POST['team_id']);
for($i = 0; $i < $match_role_checkbox; $i++) {
$team_id = escape($_POST['team_id']);
$stmt = $connection->prepare("INSERT INTO game_role_team (match_role_id, team_id) VALUES (?, ?)");
$stmt->bind_param("ss", $match_role_checkbox[$i], $team_id);
$stmt->execute();
$stmt->close();
}
}
}
HTML:
<div class="form-group">
<label for="match_role">Match Rollen</label>
<?php
$stmt = $connection->prepare("SELECT * FROM game_role");
$stmt->execute();
$result = $stmt->get_result();
while($row = $result->fetch_assoc()) {
$match_role_id = $row['match_role_id'];
$match_role_name = $row['match_role_name'];
echo "<div class='form-check'>
<input class='form-check-input' type='checkbox' name='match_role_check[]' value='$match_role_id'>
<label class='form-check-label'>$match_role_name</label>
</div>";
}
$stmt->close();
?>
</div>
白板的微信