Php 简单AJAX下拉列表2

Php 简单AJAX下拉列表2,php,javascript,ajax,Php,Javascript,Ajax,好了,这段代码现在似乎可以工作了,ajax获得了当前的选择。但我现在有另一个问题。当我在以后的数据库搜索中使用php$\u GET方法时,输出不仅仅是下拉选择的单词,还生成另一个下拉菜单。还有一个WAMP错误-GET的未定义索引 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> <script t

好了,这段代码现在似乎可以工作了,ajax获得了当前的选择。但我现在有另一个问题。当我在以后的数据库搜索中使用php$\u GET方法时,输出不仅仅是下拉选择的单词,还生成另一个下拉菜单。还有一个WAMP错误-GET的未定义索引

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $("#select").change(function(){
        $.ajax({
                url: "test.php?selected=" +$(this).val(),
                success:function(data){
                    $("#results").html(data);
                }
            }
        )
    })
});
</script>
<select id="select">
<option> something </option>
<option> something2 </option>
<option> something3 </option>
</select>

<?php

echo $_GET['selected'];

?>

<div id="results"></div>
需要有价值

<option value="test">
需要有价值

<option value="test">

出现这个问题是因为您在ajax调用中进行了自引用,而没有考虑回发。此外,初始页面加载将引发未定义的索引错误,因为所选键在$\u GET集合中不存在

在test.php文件的顶部:

然后在后面的示例中删除回音


请注意,这只是为了让您的示例正常工作,并说明失败的原因。不要给出格式良好的AJAX请求示例。

问题的出现是因为您在AJAX调用中进行了自引用,而没有考虑回发。此外,初始页面加载将引发未定义的索引错误,因为所选键在$\u GET集合中不存在

在test.php文件的顶部:

然后在后面的示例中删除回音

请注意,这只是为了让您的示例正常工作,并说明失败的原因。不要给出格式良好的AJAX请求示例。

什么是echo$\u GET['selected';应该展示什么? 你能给我们一些PHP代码吗

如果GET有一个未定义的索引,则表示数组$\u GET不包含名为selected的键。你从哪里来? 如果它来自您提供给我们的JavaScript,那么应该改为select。此外,不建议使用关键字select来命名select。

什么是echo$\u GET['selected'];应该展示什么? 你能给我们一些PHP代码吗

如果GET有一个未定义的索引,则表示数组$\u GET不包含名为selected的键。你从哪里来?
如果它来自您提供给我们的JavaScript,那么应该改为select。另外,不建议使用select关键字命名select。

这就是我所有的PHP代码。我只是想让PHP通过ajax获得选中选项并检查数据库。我打算稍后再做数据库的事情。这并不复杂:这就是我所有的PHP代码。我只是想让PHP通过ajax获得选中选项并检查数据库。我打算稍后再做数据库的事情。这并不复杂:谢谢。那么,你认为最好的解决方案是什么?当从下拉列表中选择项时,我想从数据库中获取数据,并立即显示,而不刷新站点。正如@genesis所建议的,在选项元素中使用值,然后在处理发布的数据时,请参阅我的答案中的if语句,使用发布的数据查询数据库。我建议大家阅读$.ajaxjQuery调用、post而非get以及一般php教程。谢谢。那么,你认为最好的解决方案是什么?当从下拉列表中选择项时,我想从数据库中获取数据,并立即显示,而不刷新站点。正如@genesis所建议的,在选项元素中使用值,然后在处理发布的数据时,请参阅我的答案中的if语句,使用发布的数据查询数据库。我建议阅读$.ajaxjquery调用、post而不是get以及一般php教程。
<?php
    if(array_key_exists('selected', $_GET))
    {
        echo $_GET['selected'];
        die();
    }
?>