将文本字段转换为SQL的单选按钮
问题描述:
我正在制作一个网站,用户可以将数据插入数据库并跟踪药物的摄入量。 我有一个简单的表格,提交到SQL数据库:将文本字段转换为SQL的单选按钮
<form method='post'>
<b>Dato:</b> <input type="date" name='date' id='date' value="<?php echo date('Y-m-d'); ?>" /><br /><br \>
<b>Tid:</b> <input type="time" name='time' id='time' value="<?php echo " $hour:$minute "; ?>" /><br /><br \>
<b>Medicin:</b><br /> <input type="radio" name="medicin" value="Medicin1" checked> Medicin1 <br />
<input type="radio" name="medicin" value="medicin2"> Medicin2 <br />
<input type="radio" name="medicin" value="other"> Other <input type="text" name="otherMedicin"><br /><br />
<b>Kommentar:</b><br /><textarea name='comment' id='comment'></textarea><br /> <hr \>
<input type='submit' value='Send' />
</form>
将其提交给我发现有关我按照同样的事情,以前有问题的数据库。不幸的是,我无法让它工作! html radio button with an "other" selection that has a text box
这里是我的代码的重要组成部分:
$users_date = mysqli_real_escape_string($con, $_POST['date']);
$users_time = mysqli_real_escape_string($con, $_POST['time']);
$users_medicin = mysqli_real_escape_string($con, $_POST['medicin']);
$otherMedicin = mysqli_real_escape_string($db, $_POST['otherMedicin']);
if ($users_medicin == 'otherMedicin') {
$medicinField = $otherMedicin;
} else {
$medicinField = $users_medicin;
}
$users_comment = mysqli_real_escape_string($con, $_POST['comment']);
$query = "
INSERT INTO `myDatabase`.`medi_list` (`id`, `dato`, `tid`, `medicin`, `kommentar`) VALUES (NULL, '$users_date',
'$users_time', '$medicinField', '$users_comment');";
我还是很新的SQL,所以我会很感激的任何帮助,您可以把我的方式:)
答
我见在你的代码中的一些基本问题:
当你填充字段“$ otherMedicin”,你正在使用$分贝,而不是像其他的语句$ CON。
$ _ POST [medicin]永远不会是“otherMedicin”,因为那是你的文本输入字段,而不是单选按钮的名称的名称。您应该将此作为您的条件:
if ($users_medicin == 'other') {
这应该有所帮助。
+0
非常感谢你!这正是我需要完成的! 我一直在看这么多,我看不出错误。 – Christina
你说,它“不工作”,但你没有说为什么还是什么不工作。您收到错误讯息? (在这种情况下,你会得到什么信息)你没有得到预期的结果? (在这种情况下你现在得到什么) –