1

我已经发布了几次以寻求帮助,我似乎无法弄清楚为什么我没有从动态下拉列表中获取任何数据,但我从 2 个静态字段中获取。我确实得到了一些答案,但主要是说我需要解决安全问题,我希望在任何东西上线之前先学习一下,Firebug 中的一切看起来都很好,包括 http 请求的跟踪,我认为这是查询的问题我正在尝试运行,我将再次发布此内容,看看是否有人可以在我解决安全漏洞之前帮助我。

非常感谢你帮助我。

首先是html,子类别是问题,所有项目都存储在一个javascript数组中并且工作正常,只是不是查询

<select name="Category" id="Category" 
onchange="javascript: dropdownlist(this.options[this.selectedIndex].value);">
<option value="">Select Category</option>

<select name="subcategory" id="subcategory">
<option value="">Select Sub-Category</option>
</select>

<script>

$(function() {
  $('#subcategory').change(function() {
        $('#subcategory').load('results.php', {value: $(this).val()});
  });
});

</script>

 $category=$_POST['Category'];
 $subcategory=$_POST['Subcategory'];
 $destination=$_POST['Destination'];


 $result = mysql_query("SELECT * FROM travel WHERE Category='$category' 
 AND Subcategory='$subcategory' AND Destination='$destination'")
 or die(mysql_error());


 $row = mysql_fetch_assoc( $result ) ;

回显到表(未发布,工作正常)

4

2 回答 2

1

从哪里开始?您的字段名称是“子类别”。您将“值”传递给 results.php 并尝试从$_POST数组中检索“子类别”。您需要将所有这些名称排成一行。

我不确定 PHP 是否有 results.php 的代码或表单发布到的任何脚本,或者它们是否相同?无论如何,无论 results.php 需要什么,您都需要在传递给加载的数据中包含它。例如,由于您当前使用“值”,因此您将通过 而不是 检索$_POST['value'] $_POST['Subcategory']

于 2012-05-09T19:04:42.970 回答
0

您只能从“#subcategory”表单传递给 php 数据,而不是从“#Category”传递给 php 数据,并且使用的 id 不是您在 php 代码中使用的。而且你没有“目的地”的代码,所以我不知道应该从哪里获取。$(document).ready使用 jquery 时最好将代码放入其中。它应该是这样的:

   $(document).ready(function() {
      $('#subcategory').change(function() {
            $('#subcategory').load('results.php', {Subcategory: $(this).val(), Category: $("#Category").val() });
      });
    });
于 2012-05-09T23:27:21.147 回答