希望您一切都好,我一直面临着将HTML表中的数据放入“选择框”的问题。
我正在使用PHP MySQLi和Ajax使用Jquery执行诸如插入,更新,删除和查看之类的操作。我完成了两个过程,例如“插入”和“在表上显示数据”,但是我无法获取HTML表,也无法在HTML标记中选择框。
我已经使用外键引用来建立类别和产品表之间的关系。我想从产品表中获取 Category_Name ,并将选定的category_name分配给HTML Select Box。
这是Php功能
// Get Product Data
function get_product_record()
{
global $con;
$Pro_Update_Id = $_POST['Pro_Update_ID'];
$query = "select * from product where Product_ID='$Pro_Update_Id'";
$result = mysqli_query($con,$query);
while($row=mysqli_fetch_assoc($result))
{
$data = "";
$data[0]=$row['Product_ID'];
$data[1]=$row['Category_ID'];
$data[2]=$row['Product_Name'];
$data[3]=$row['Product_Qty'];
$data[4]=$row['Price'];
$data[5]=$row['Description'];
}
echo json_encode($data);
}
这是jQuery文件
function get_pro_record()
{
$(document).on('click','#p_btn_edit',function()
{
var GetPID = $(this).attr('data-id');
$.ajax(
{
url: 'includes/products/get_pro_record.php',
method: 'post',
data:{Pro_Update_ID:GetPID},
dataType: 'JSON',
success:function(data)
{
$('#product_id').val(data[0]);
$('#cat_up_id').val(data[1]);
$('#product_up_name').val(data[2]);
$('#up_Qty').val(data[3]);
$('#up_Price').val(data[4]);
$('#up_description').val(data[5]);
$('#products_update').modal('show');
}
})
})
}
**这里是HTML表格**
<form>
<input type="hidden" id="product_id" class="form-control my-2" placeholder=" Product Name">
<select name="cat_up_id"></select>
<input type="text" id="product_up_name" class="form-control my-2" placeholder=" Product Name">
<input type="text" id="up_Qty" class="form-control my-2" placeholder=" QTY">
<input type="text" id="up_Price" class="form-control my-2" placeholder=" Price ">
<textarea id="up_description" class="form-control" placeholder="Description"></textarea>
</form>
我正在控制台屏幕中接收完整的数据,但是看不到category_name我正在接收category_id。所以,请告诉我该怎么解决。
这是控制台中项目的输出 Project Output in Console
答案 0 :(得分:0)
首先,您需要使用内部联接从“产品”和“类别”表中查询数据库
$query = "select a.*, b.Category_Name from product a, category b where a.Category_Id =
b.Category_Id and Product_ID='$Pro_Update_Id'";
然后,您需要添加$ data以及一个用于类别名称的元素
$data[6]=$row['Category_Name'];
然后您需要添加选项项目以选择
$('#cat_up_id').html('<option>' + data[6] + '</option>');
,然后在选择代码中将属性名称=“ cat_up_id”替换为id =“ cat_up_id”
答案 1 :(得分:0)
Sonnal Bonkar是正确的,您需要在这里进行表联接。这是您的情况,因为您需要将id值存储在表中
$('#cat_up_id').html('<option value="'+ data[1] +'">' + data[6] + '</option>');