php - 如何将复选框值保存到数据库中

标签 php mysql

您好,我有一个复选框,如果选中,我想将其值保存到数据库中,如果未选中,则保存不同的文本。

我试过这段代码,它可以工作,但如果我有 2 个复选框,它就不再工作了。

在 view.php 中尝试过代码:

$ch = SELECT check FROM users;
if($ch=="checked"){
    echo "checked";
}else{
    echo "not checked";
}

html :

<form action="action.php" method="post" id="form">
<p>checkbox: <input type="checkbox" name="check" value="checked" /></p>
<input type="submit" value="submit" />
</form>

action.php :

<?php

define('DB_NAME', 'users');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_HOST', 'localhost');

$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
    die('Could not connect : ' . mysql_error());
}

$db_selected = mysql_select_db(DB_NAME, $link);

if (!$db_selected) {
    die('Can not use '.DB_NAME . ' :  ' . mysql_error());
}

$check =$_POST['check'];

$sql = "INSERT INTO users (check) VALUES ('$check')";

echo "your informations were sent to our database click to come back";

mysql_query($sql);
mysql_close();
?>

view.php :

<?php
$dbname = "users";
$username = "root";
$password = "";
$servername = "localhost";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
     die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT * FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {

     while($row = $result->fetch_assoc()) {
         echo "checkbox : ". $row["check"];
     }
} else {
echo "<a class='btsc'>no one registrated if you want register complete the form</a>";
}

$conn->close();
?> 

数据库:

http://i.stack.imgur.com/xmoVc.jpg

最佳答案

如前所述,复选框值在未选中时不会被设置。

这是我使用过的一些解决方法:

 <input type="hidden" name="check" value="false" />
 <input type="checkbox" name="check" id="check" value="true" />

现在,如果复选框被选中,那么具有相同名称的隐藏元素将被覆盖。

关于php - 如何将复选框值保存到数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30577664/

相关文章:

mysql - 忽略搜索查询中的特殊字符

PHP:从函数返回值并直接回显?

php - Laravel-4 如何使用 id 值和 name 值从数据库中填充选择框

php - INNER join 返回不返回总结果

php - MySQL:不包括第一次出现的总数量

mysql - 在 Yii 中设置时区

php - 上传文件 PHP 时生成唯一文件名的最佳方法

java - Android 到 Web 服务器问题

java - 在 JDBC 的 QUERY WHERE 子句中指定变量名

mysql - 在 MYSQL 查询中显示行号