gpt4 book ai didi

javascript - 组合框列表无法显示数据库中的数据

转载 作者:行者123 更新时间:2023-11-29 02:13:14 27 4
gpt4 key购买 nike

每当我在承包商列中选择某些内容(按照链接中的附件)时,我正在开发一个组合框,车辆组合框将根据承包商选择从数据库中检索信息。

遇到的问题:
车辆组合框无法显示基于承包商选择的数据。

界面设计说明:

illustration about the interface design


我在代码的第一部分附上了我的 HTML 表格代码。

<td>
<select class="form-control" name='opt_contractor[]' id='opt_contractor' onChange="getState(this.value);" <?php if ($view==1) {?> disabled <?php }?> >
<option>-- Select One --</option>
<?php
foreach ($get_contractor as $contractor ){
?>
<option value='<?php echo $contractor->ref_id;?>'<?php if($contractor->ref_id == $reqtype){echo ' selected';}?>><?php echo $contractor->ref_desc;?>
</option>
<?php } ?>
</select>
</td>
<td>
<select class="form-control" name="opt_vehicle[]" id="opt_vehicle" >
<option value="">-- Select Vehicle --</option>
</select>
</td>

脚本

function getXMLHTTP() { //fuction to return the xml http object
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e1){
xmlhttp=false;
}
}
}

return xmlhttp;
}


function getState(countryId)
{
var strURL="refresh.php?country="+countryId;
var req = getXMLHTTP();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4)
{
// only if "OK"
if (req.status == 200)
{
document.getElementById('opt_vehicle').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}

PHP 代码

$query ="SELECT ref_id, ref_desc FROM ref_mst WHERE ref_val5 = '" . $country . "'";
$result = $db->query($query);

?>
<select name="opt_vehicle" >
<option>Select State</option>
<?php while($row=mysqli_fetch_assoc($result)) { ?>
<option value=<?php echo $row['ref_id'] ?> ><?php echo $row['ref_desc'] ?>
</option>
<?php } ?>
</select>

对于这部分(引用 php 代码),我已经多次尝试解决问题,我也将问题附加在下面。

1. <?php while($row=mysqli_fetch_assoc($result)) { ?>
2. <?php while($row=mysqli_fetch_array($result)) { ?>
3. <?php while($row=mysqli_fetch_object($result)) { ?>

错误说明: enter image description here

最佳答案

刚刚查看了您的 PHP 代码

我认为您的 PHP 代码存在问题,请将其替换为下面的代码

    <?php
//re updated the query code instead , now used the AND and markers
$query ="SELECT `ref_id` AND `ref_desc` FROM `ref_mst` WHERE `ref_val5` = '.$country.'";
$result = $db->query($query);
?>
<select name="opt_vehicle" >
<option>Select State</option>
<?php while($row=mysqli_fetch_assoc($result)) { ?>
<?php
foreach ($row as $key => $value) {
echo $value;
echo $tableRow[$key];
}
?>
<option value="<?php echo $tableRow['ref_id']; ?>"><?php echo $tableRow['ref_desc']; ?></option>
<?php } ?>
</select>

self 调试我在那里 echo

echo $value;

我认为报价有问题..所以尝试并更新我..谢谢..

请尝试在您的普通代码中使用 PDO 准备语句或 Mysqli 准备语句,您正在使用直接查询数据库。

关于javascript - 组合框列表无法显示数据库中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46112515/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com