php - 运行 SQL 查询并根据下拉选择更新表单

标签 php jquery mysql sql

所以我有两个下拉列表类别子类别。选择类别后,必须通过SQL查询填充子类别

我知道如何从 SQL 查询填充:

<?php
mysql_connect('localhost', 'user', 'pw');
mysql_select_db('db');

$sql = "SELECT col FROM table";
$result = mysql_query($sql);

echo "<select name='col'>";
while ($row = mysql_fetch_array($result)) {
    echo "<option value='" . $row['col'] . "'>" . $row['col'] . "</option>";
}
echo "</select>";
?>

但我不知道如何在 jQuery 中运行查询和更新列表:

function updateList(){
//QUERY&fill based on selection//
.val($('select[name="category"] option:selected').val());
}

我在谷歌上花了一个小时左右,但没能解决这个问题。

最佳答案

您必须在选择主类别时创建 onchange 函数,并将其传递给 jquery 或 javascript ajax 请求响应,以从另一个具有子类别输出的文件中获取值,其中 SQL where 条件作为主类别值。

echo "<select name='col' onchange='loadXMLDoc()'>";

上面的主猫下拉列表及其ajax javascript请求响应如下

<script>
function loadXMLDoc()
var maincat=document.getElementByName("col").val();
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
  {
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","demo_post2.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("maincat_var=maincat");
}

在主页中创建一个 id 为 myDiv 的 div。 另一个页面应该有

<?php
mysql_connect('localhost', 'user', 'pw');
mysql_select_db('db');

$sql = "SELECT col FROM table where main_cat=$_POST['maincat_var']";
$result = mysql_query($sql);

echo "<select name='col2'>";
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['col'] . "'>" . $row['col'] . "</option>";
}
echo "</select>";
?>

关于php - 运行 SQL 查询并根据下拉选择更新表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24674781/

相关文章:

php - 将 ajax 数据发布到 PHP 并返回数据

javascript - 使用 javascript 进行 JSON 重构(合并内容)

mysql - phpmyadmin 导入数据耗时太长

php - 3个月后发送电子邮件提醒

php - ElasticSearch索引的“建议”映射不会返回结果

Php 检查 shell_exec 命令是否成功

php - 将变量发送到表 PHP SQL

javascript - 为接受事件的函数调用设置超时在 IE7 中不起作用

c# - 可检查的表头复选框不起作用

javascript - 怎么调404页面去搜索