我正在尝试通过使用php和jquery从选择框中选择一个选项来更新数据库中的表列。这样,当用户单击某个选项时,站点将文本值返回到数据库中的类别列。我真的尝试过理解适用的概念,将对您的帮助表示感谢。
我的数据库表, selecting an option updates the category column 我的代码尝试
enter code here
<div class="upload_wrapper">
<select id="selectbox" name="options">
<option value="" selected>Select Category</option>
<option value="Furniture">Furniture</option>
<option value="Tableware">Tableware</option>
<option value="Jewellery">Jewellery</option>
<option value="Shoes">Shoes</option>
<option value="Water Bottles">Water Bottles</option>
<option value="Clothes">Clothes</option>
<option value="Fabric Patterns">Fabric Patterns</option>
</select>
<?php
include('connect.php');
if(isset($_POST['options'])){
$sql = "INSERT INTO images (category) VALUES ($_POST["options"])";
}
$select_category = array('Furniture', 'Tableware', 'Jewellery', 'Shoes', 'Water Bottles', 'Clothes', 'Fabric Patterns');
?>
<script>
$('#selectbox').change(function(){
$sql = $($('#selectbox option:selected').text();
});
</script>
</div>
答案 0 :(得分:0)
您应该可以执行此操作。
我自己的项目中的示例,其中我从数据库表中提取了一些类别:
$result = mysqli_query($con,$sql)or die(mysqli_error());
if (mysqli_num_rows($result) > 0) {
//open the select tag before the loop
echo"<select name='category'>";
//populate the select
while($row = mysqli_fetch_assoc($result)) {
$name=$row["Name"];
echo"<option value=" .$name.">".$name."</option>" ;
}
//close the select tag after the loop
echo"</select>";
echo "<br>";
} else {
echo "0 results";
} ?>
然后我可以在SQL查询中使用此变量显示单击的选项值:
$category = mysqli_real_escape_string($link, $_REQUEST['category']);
$ link是我的SQL连接。
答案 1 :(得分:0)
如果要在每次选择下拉列表时将数据插入表中,则必须使用ajax。
首先将此脚本添加到您的html中。
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script>
将脚本更改为此:
$(document).ready(function() {
$('#selectbox').change(function(){
$sql = $(this).val();
$.ajax({
url:"filename of your php file",
method:"POST",
data:{
CatNAME:$sql
},
dataType:"json",
success:function(data){
alert("INSERTED SUCCESSFULLY");
}
})
});
});
您在php上的条件如下:
if(isset($_POST['CatNAME'])){
$catname = $_POST["CatNAME"];
$sql = "INSERT INTO images (category) VALUES ('$catname')";
}
注意:不要忘记ajax上的url:
,它是php文件本身。