所以我试图将复选框中的值存储到我的数据库中 它可以工作,如果我使用普通的文本框,但只要我用复选框尝试它它不起作用任何想法?我想有两个例如checkbox1和checkbox2,值应该存储在我的数据库列中,例如Colum1 colum2。 在此先感谢anyhelp
<form name="checkbox.php" id="names" action="<?php echo JURI::current(); ?>" method="post">
<p><input type="checkbox" name="game" value="ExampleGame" />b</p>
<p><input type="checkbox" name="Age" value="ExampleAge" />b</p>
<p><input id="submit" name="submit" type="submit" value="Submit Names" /></p>
</form>
<?
if( (isset($_POST['game'])) || (isset($_POST['Age'])) ) {
//first name or last name set, continue-->
$game = $_POST['game'];
$Age= $_POST['Age'];
$db =& JFactory::getDBO();
$query = "INSERT INTO `gameTable` (`game`, `Age`)
VALUES ($game, $age);";
$db->setQuery( $query );
$db->query();
} else {
echo '<h4>One Field Is Required!</h4>';
}
?>
答案 0 :(得分:0)
试试这个
$query = "INSERT INTO `gameTable` (`game`, `Age`) VALUES ('".$game."','".$age."', )";
答案 1 :(得分:0)
检查表单中返回的值:
$game = $_POST['game'];
$Age= $_POST['Age'];
您应该会发现,如果未选中该复选框,则不会返回任何值(实际上,没有字段)。 这可能是你的问题。
答案 2 :(得分:0)
使用一些警报进行故障排除:
echo $_POST['game'];
echo $_POST['Age'];
echo $_POST['query'];
即使您不知道自己在做什么/做错了什么,也要尝试解决问题。 警报在PHP中有很多帮助,可以检查你是否得到了你期望的变量值。
如果您获得了查询字符串,请直接在数据库上进行测试。
答案 3 :(得分:0)
我用这种简单的方法解决:
<input type="checkbox" name="field_name" value="N" style="display: none;" checked />
在mysql数据库上,我创建了一个触发器
if new.field_name= '' then set new.field_name= 'S';