gpt4 book ai didi

php - 无法将复选框值发送到 MySQL 数据库?

转载 作者:行者123 更新时间:2023-11-29 18:10:09 25 4
gpt4 key购买 nike

我正在尝试根据表单中的复选框(已监视)在数据库中存储 bool 值。如果表单提交时未选中该复选框,则应发送 0;否则为 1。

但是,无论是否检查,它都会发送 0 值。标题字段和流派字段发送完美,但观看条件无法正常工作。我很困惑,很难理解这个问题,有什么想法吗?

<?php 

require 'config/config.php';
require 'config/db.php';

// Check for Submit
if(isset($_POST['submit'])) {
// Get Form Data
$title = mysqli_real_escape_string($conn, $_POST['title']);
$genre = mysqli_real_escape_string($conn, $_POST['genre']);
if (isset($_POST['watched']) && ($_POST['watched'] == "value")) {
$watched = 1;
} else {
$watched = 0;
}

$query = "INSERT INTO movies(name, genre, watched) VALUES('$title', '$genre', '$watched')";

if (mysqli_query($conn, $query)) {
header('Location: '.ROOT_URL.'');
} else {
echo "ERROR: " . mysqli_error($conn);
}
}

?>

<form method="POST" action="<?php $_SERVER['PHP_SELF']; ?>">

<div class="md-form">
<input type="text" id="form1" class="form-control" name="title">
<label for="form1" class="">Title</label>
</div>

<div class="md-form">
<input type="text" id="form1" class="form-control" name="genre">
<label for="form1" class="">Genre</label>
</div>

<div class="form-group">
<input type="checkbox" id="checkbox1" name="watched">
<label for="checkbox1">Have you watched it already?</label>
</div>

<input type="submit" name="submit" value="submit" class="btn btn-primary">

</form>

最佳答案

您从未在表单 HTML 中为复选框设置实际值,因此该复选框的值永远不会存在,这意味着您的 if 语句将始终返回 false。

只需更改此:

<input type="checkbox" id="checkbox1" name="watched">

对此:

<input type="checkbox" id="checkbox1" name="watched" value="value">

关于php - 无法将复选框值发送到 MySQL 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47480787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com