>我有一个表单字段
<input type="checkbox" name="page" value=""/>
并且mysql db中的相应字段为真和假,如果有人单击复选框,我想通过POST将TRUE值发送到db,我该如何实现?
你给输入任何你喜欢的值:
<input type="checkbox" name="page" value="true"/>
然后,如果选中该复选框,它将是一个成功的控件并提交。
<?php
if (isset($_POST['page']) && $_POST['page'] == 'true') {
// Then insert something into the database as normal
}
?>
如果要在未选中复选框时进行设置,则需要一个else
才能使用if
。
对于复选框,value
属性确定选中该项时的值。如果未选中,则根本不会提交任何值。因此,应始终在复选框上指定 value
属性。
如果希望复选框默认为选中,则还需要指定 checked
属性。
<input type="checkbox" name="page" value="1" checked='checked' />
形式:
<form action="/path/to/processing_script.php" method="POST">
<!--... Other Form Elements go here -->
<input type="text" name="color" />
<input type="checkbox" name="page" value="True"/>
<input type="submit" value="Send to Database" />
</form>
处理脚本:(processing_script.php)
<?php
// Check is 'True'?
if ($_POST['page'] != 'True')
{
$_POST['page'] = 'False';
}
$con=mysqli_connect("your-db-loc","your-db-username","your-db-pass","db-name");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL Database: " . mysqli_connect_error();
}
mysqli_query($con,"INSERT INTO TableNameHere (True-false, Favorite Color)
VALUES ($_POST['page'], $_POST['color'])");
mysqli_close($con);
?>
我创建的此示例将 2 种数据类型添加到数据库上的新行中。
将文本"TableNameHere"替换为您的数据库表名称,格式应类似于:"prefix_colors_tble"
将文本"your-db-loc"替换为您的数据库位置,通常是内部服务器的"localhost",或者可能是实时服务器的URL。
替换文本"您的数据库用户名"用于登录mysql的用户名,必须具有足够的权限。
替换文本"your-db-pass"用户的密码
替换文本"db-name"数据库名称(除非包含多个数据库,否则不被视为重要)
根据需要将文本"True-false"和"Favorite Color"替换为db表列标题。
祝你好运!我知道这个答案晚了几年,但我希望它能帮助其他人。将您的感激之情发送给 http://amazewebs.com/testimonial 谢谢。
在表单提交后通过阅读$_POST
来收集以下内容,然后使用mysql_query将它们写入数据库
您要做的第一件事是修改复选框的当前 html 代码并在值字段中添加一些内容。
假设您将值设置为 1。
第二件事是,如果您要发布表单,则必须使用服务器端语言(如PHP,Perl,Java等)处理表单。
例如,在 PHP 中,您可以使用 $_POST['page'] 获取为页面字段发送的内容。
现在你必须做一些服务器端处理,看看 $_POST['page'] == '1' ,然后设置$page = 'true';
否则设置$page = 'false';
可以使用所用语言的库函数将$page插入到数据库中。