我不是(我确信你会在下面注意到)程序员或编码员。我编写网络文档手册。
也就是说,我确实对 HTML、php、css 等有一定的了解。但接下来发生的事情让我彻底而彻底地难住了:
我正在尝试为我的一个处于绑定状态的朋友构建一个站点,尽管其他一切都很好,但我必须将最终用户重定向到专门为他们的社区构建的网页。
我需要的是一种让最终用户单击下拉菜单的方法,该下拉菜单列出(通过 MySQL 查询)记录可用的所有状态,当他们在第一个菜单中选择一个选项时,第二个菜单由该州内的社区(同样通过 MySQL)填充。
尽管我已经在互联网上搜索了可能有用的东西,但我发现我根本不具备编码逻辑的能力。但是,我确实找到了一个站点,该站点显示了我正在尝试做的基本版本(请参阅此处),但我似乎无法让它与 MySQL 一起使用。这是我到目前为止的位置:
脚本 -
<script>
function swapOptions(ArrayName) {
var ExSelect = document.theForm.sites;
var theArray = eval(ArrayName);
setOptionText(ExSelect, theArray);
}
function setOptionText(theSelect, theArray) {
for (loop = 0; loop < theSelect.options.length; loop++) {
theSelect.options[loop].text = theArray[loop];
}
}
</script>
和 HTML——
<form name="theForm">
<select name="chooseCat" onchange="swapOptions(this.options[selectedIndex].text);">
<option value="">Please select your state ...</option>'
<?php
$query = mysql_query("SELECT DISTINCT state FROM sites ORDER BY state")
or die(mysql_error());
while ($result = mysql_fetch_assoc($query)) {
$stateChoice = $result['state'];
echo '<option value="';
echo "$stateChoice";
echo '">';
echo "$stateChoice";
echo '</option>';
echo '<br />';
}
?>
</select>
<select name="sites" style="min-width: 100px;" onchange="location.href='reports.php?page=' + this.options[this.selectedIndex].value;">
<?php
$query = mysql_query("SELECT * FROM sites")
or die(mysql_error());
while ($result = mysql_fetch_assoc($query)) {
echo '<option value="';
echo '">';
echo $result['longname'];
echo '</option>';
echo '<br />';
}
?>
</select>
</form>
这将返回两个下拉列表。第一个是我对可用状态的查询结果,在下拉列表中按字母顺序列出。第二个列出了所有站点的长名称,但对于表中的所有站点,不仅仅是某个州(刚刚选择的州)内的站点。
最后,下拉列表 1 应填充所有可用状态。一旦用户选择了他们的状态,这应该会触发下拉列表 2 的人口以及他们选择的状态内的所有社区。在下拉列表 2 中单击社区选择后,它应该将用户的浏览器重定向到,例如http://www.webpage.com/reports.php?page=communityNameGoesHere ...
非常感谢您在这里提供的任何建议:)