我有一个HTML表单,其中select标记用于输入,有4个选项在最后一个选项中被命名为other.When selected一个文本字段来了,并且可以给出输入:
HTML表单:
<html>
<head>
<script type="text/javascript">
$('select').on('change', function(){
if($(this).val()=='Other:'){
$('#other').show().focus();
}else{
$('#other').val('').hide();
}
})
</script>
</head>
<body>
<tr>
<td>
<label>Options : </label>
</td>
<td>
<select name="Options">
<option value="Option-1">Option-1</option>
<option value="Option-2">Option-2</option>
<option value="Option-3">Option-3</option>
<option value="Other:">Other</option>
</select>
<input type="text" id="other" style="display:none" name="other" style="display:none"/>
</td>
</tr>
</body>
</html>在DB中插入时,只能插入文本字段中添加的值。其中选项1、2、3没有被收集并插入DB中。
在mysql DB中插入值的PHP代码:
<?php
$link = mysqli_connect("localhost", "root", "", "database");
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
$Options = mysqli_real_escape_string($link, $_POST['Options'], $_POST['other']);
$sql = "INSERT INTO Table (Options) VALUES ('$Options');
if(mysqli_query($link, $sql)){
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
mysqli_close($link);
?>我想收集曾经被选中并插入DB中的选项。目前,只能插入通过文本字段输入数据的另一个选项。
提前谢谢。
发布于 2016-06-16 05:37:56
如果通过选择列表给出了输入,则使用if在值之间切换。
if($_POST["Options"] !== "Other:"){
$Options = mysqli_real_escape_string($link, $_POST['Options']);
}else{
$Options = mysqli_real_escape_string($link, $_POST['other']);
}
$sql = "INSERT INTO Table (Options) VALUES ('$Options')";
// ...https://stackoverflow.com/questions/37849669
复制相似问题