gpt4 book ai didi

php - 显示从组合框中选择的搜索选项的所有结果

转载 作者:行者123 更新时间:2023-11-29 07:46:42 27 4
gpt4 key购买 nike

我有 mysql 数据库,其中包含 id、division、district、branch、scm_name 和 scm_address 列。这里的条件就像 - 一个分支名称代表许多 scm_names...总共有 207 个分支,大约 1000 个 scm_names

我使用以下代码通过组合框选项按分支进行搜索,单击搜索按钮后,用户将重定向到 results.php 页面。在这里,我想显示具有所选分支名称的所有 scm_names。

目前,它仅显示第一行作为结果。如何显示该分支的所有 scm_name?

使用的代码 -

index.php

    $query="SELECT * FROM tablename  group by branch   order by branch ASC ";

$result = mysql_query ($query) or die ('error submitting');
$count=1;
echo "<select name='district'>";
while($drop=mysql_fetch_array($result)){


echo "<option value=$drop[id]>$count) $drop[branch] Branch From - $drop[district] District</option>";

$count++;}

echo "</select>";

使用此代码,它可以正确填充数据库中所有 1000 行的 207 个分支的列表。

结果.php

 $district = $_POST['district'];

$sql = "SELECT division, district, branch, GROUP_CONCAT(scm_name SEPARATOR ', ') AS scm_name FROM tablename where id = '$district' GROUP BY branch";


$results1=mysql_query($sql);


while($row = mysql_fetch_assoc( $results1 )) {?>

Division : $row["division"]
Division : $row["district"]
Division : $row["branch"]
Division : $row["scm_name"]
Division : $row["scm_address"]

<?}?>

但它只显示第一行作为结果。所以结果只显示一个 scm_name。

如何显示数据库中具有相同分支名称值的所有 scm_names ?

最佳答案

使用id列只会选择一行。您需要使用与分支中所有行匹配的列。

index.php中,使用:

echo "<option value='$drop[branch]'>$count) $drop[branch] Branch From - $drop[district] District</option>";

results.php 中,测试该列:

$sql = "SELECT  division, district, branch, GROUP_CONCAT(scm_name SEPARATOR ', ') AS scm_name
FROM tablename
where branch = '$district'";

由于您只是返回单个分支的行,因此此处不需要GROUP BY分支。您也不需要 while 循环来显示结果,因为这只会返回一行。

关于php - 显示从组合框中选择的搜索选项的所有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27576413/

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