查询是否如果我选择'选择新的父类别'从下拉列表中,会出现一个新的文本框。我想将该值插入数据库。该文本框被默认隐藏。
HTML文件
<head>
<script type="text/javascript">
$(document).ready(function() {
$('#parentcat').change(function(){
if($('#parentcat').val() === 'Create a New Parent Category')
{
$('#other').show();
$('#catname').hide();
}
else
{
$('#other').hide();
$('#catname').show();
}
});
});
</script> </head>
<table>
<body>
<form method="POST" action="" name="form1" enctype="multipart/form-data" >
<tr>
<td><h4>Add category</h4></td>
</tr>
<tr>
<td>Select parent Category:</td><td><select name="parentcat" id="parentcat">
<?php
include "../storescripts/connect_to_mysql.php";
$result=mysql_query("SELECT parent from category"); while($row=mysql_fetch_array($result)){
echo "<option>".$row['parent'];"</option>";
} ?>
<option value="Create a New Parent Category">Create a New Parent Category</option>
</select><br/></td>
<tr><td><input type="text" id="other" name="other" placeholder="New Parent Category Name:" style="display: none;"/></td></tr>
</tr>
<tr>
<td></td><td><input type="text" name="catname" placeholder="SubCategory name" id="catname"><br/></td>
</tr>
<tr>
<td>Status:
</td>
<td><select name="status" >
<option selected="Active">Active</option>
<option>Inactive</option>
</select></td>
</tr>
<tr><td>Category Image :</td><td><input type="file" name="imageUpload" id="imageUpload"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Insert"></td>
</tr>
</form>
</table>
这是我完整的HTML文件,默认为&#39;其他&#39;下拉列表是隐藏的。现在我在这里提供我的PHP代码,将值插入数据库,问题是如何将隐藏字段的值插入数据库。我的数据库字段包括:cat_id(自动增量),cat_name,parent,cat_status,cat_image。 这是我的PHP代码,用于将值插入数据库。
<?php
if(isset($_POST['submit']))
{
$parentcat=$_POST['parentcat'];
$catname=$_POST['catname'];
$status=$_POST['status'];
$target_dir = "../uploads/";
$target_file = $target_dir . basename($_FILES["imageUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
if (move_uploaded_file($_FILES["imageUpload"]["tmp_name"], $target_file)) {
echo "The file ". basename( $_FILES["imageUpload"]["name"]). " has been uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
}
$image=basename( $_FILES["imageUpload"]["name"],".jpg"); // used to store the filename in a variable
$sql = mysql_query("SELECT cat_id FROM category WHERE cat_name='$catname' LIMIT 1");
$CatMatch = mysql_num_rows($sql); // count the output amount
if ($CatMatch > 0) {
echo 'Sorry you tried to place a duplicate "Category Name" into the system, <a href="addcategoryy.php">click here</a>';
exit();
}
else{
$sql=mysql_query("INSERT INTO `category` (`cat_name`, `parent`, `cat_status`,`cat_image`) VALUES ('$catname', '$parentcat', '$status','$image') ");
echo $sql;
}
}
?>
对于例如。如果我选择一个新的父类别,则出现名为textbox的子类别,我想将该值插入数据库。我怎么能这样做。
答案 0 :(得分:0)
像这样更改您的jquery代码
<script type="text/javascript">
$(document).ready(function () {
$('#parentcat').change(function () {
if ($('#parentcat').val() === 'Create a New Parent Category'){
$('#other').prop('type', 'text');
$('#catname').prop('type', 'hidden');
}
else{
$('#other').prop('type', 'hidden');
$('#catname').prop('type', 'text');
}
});
});
</script>
同样更改#other
输入框的HTML代码,如下所示
<input type="hidden" id="other" name="other" placeholder="New Parent Category Name:"/>
让我知道它是否适合你。
修改强>
在您的PHP文件中,而不是$catname=$_POST['catname'];
添加此
$catname = ( $parentcat == "Create a New Parent Category") ? $_POST['other'] : $_POST['catname'];