gpt4 book ai didi

mysql - 通过 PHP 从 MySql 填充下拉菜单

转载 作者:行者123 更新时间:2023-11-29 14:46:09 25 4
gpt4 key购买 nike

我想知道是否有人可以帮助我。

我有一个包含多个表的 MySql 数据库。我的问题围绕着“用户详细信息”、“检测器”和“搜索头”这三个数据的使用。

我想要做的是在我的 HTML 表单上填充一个下拉菜单,该菜单显示用户特定的“检测器”,反过来,另一个下拉菜单也是用户特定的,但也只显示“searchhead”适用于第一个下拉菜单中所做的“探测器”选择。

所有三个表都有一个“userid”字段,“探测器”和“搜索头”的表都有一个“Detectorid”字段。

有人可以告诉我如何进行设置吗,因为我必须承认我不知道从哪里开始。

非常感谢和问候

克里斯。

更新的 JS 代码

<script type="text/javascript" language="javascript">
$(document).ready(function(){
$.fetch_data = function (what) {
var send = {
"what" : what,
"data" : $("select[name=detectors]").val()
};
$.post ("dropdownmenus.php", send, function(data){
$("select[name=" + what + "]").html(data);
});
};
$.fetch_data ("detectors");
$("select[name=detectors]").live("change", function(){
// reset the searchhead as new data will be implemented
$("select[name=detectorsearchheads]").html("");
$.fetch_data ("detectorsearchhead");
});
});
</script>

更新的 PHP 代码

<?php     
$request = array (
"detector" => @$_POST["detector"],
"detector" => @$_POST["detector"] );
// clean $request.
$build_query = "select * from " . $request["what"] . " "
. "where userid = \"" . $user_id . "\"";
$build_results = mysql_query ($build_query);
$return_results = "";
foreach ($build_results as $index => $data) {
$return_results .= "<option value=\"detector" . $data["id"] . "\">" . $data["text"] .
"</option>"; }
echo $return_results; ?>

最佳答案

这更像是 Javascript,而不是复杂的 MySQL 查询。

form.php

此页面是您的表单所在的位置。我创建了一个 Ajax 函数来获取必要的数据。我尚未完成所有内容,但我为您提供了需要完成的内容的概要。从 select 输入收集的数据通过 jQuery 中的 ajax post 请求进行传输。然后,数据被操作并格式化为 html 数据,该数据可以被 select 输入理解。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script>
$(document).ready(function(){
$.fetch_data = function (what) {
var send = {
"what" : what,
"data" : $("select[name=detectors]").val()
};
$.post ("url/to/ajax.php", send, functio(data){
$("select[name=" + what + "]").html(data);
});
};
$.fetch_data ("detectors");
$("select[name=detectors]").live("change", function(){
// reset the searchhead as new data will be implemented
$("select[name=searchhead]").html("");
$.fetch_data ("searchhead");
});
});
</script>
<form>
<label>Detectors</label>
<select name="detectors">

</select>
<label>Search Heads</label>
<select name="searchead">

</select>
</form>

url/to/ajax.php

在这里,您必须调整数据的处理方式。您可以根据 what 变量使用 PHP switch,这将根据请求的内容更改查询。

<?php
$request = array (
"what" => @$_POST["what"],
"data" => @$_POST["data"]
);
// clean $request.
$build_query = "select * from " . $request["what"] . " "
. "where userid = \"" . $user_id . "\"";
$build_results = mysql_query ($build_query);
$return_results = "";
foreach ($build_results as $index => $data) {
$reurn_results .= "<option value=\"" . $data["id"] . "\">" . $data["text"] . "</option>";
}
echo $return_results;
?>

关于mysql - 通过 PHP 从 MySql 填充下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6928568/

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