参数和AJAX,PHP

时间:2013-07-31 17:32:54

标签: php jquery ajax

我正在尝试从PHP页面检索信息,该页面根据给定的?id =参数查询数据库。通过AJAX这样做应该为用户提供有关特定项目的信息等。如果数据库中不存在id参数,则用户将被重定向到查找页面。

当查看AJAX示例并遵循相同的步骤时,似乎该参数未用于MySQL查询 - 它使用标头信息重定向我并检索查找页面,就好像给出了不正确的值但是ID存在。

关于出了什么问题的任何想法?

var id = $('#code')。val;是用户提供他们希望查找的ID的输入。

$(document).ready(function() {
$('#check').click(function() {
    var id = $('#code').val;
    if (id=="")
      {
      document.getElementById("result").innerHTML="";
      return;
      } 
    if (window.XMLHttpRequest)
      {
      xmlhttp=new XMLHttpRequest();
      }
    else
      {
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("result").innerHTML=xmlhttp.responseText;
        }
      }
    xmlhttp.open("GET","result.php?id="+id,true);
    xmlhttp.send();
});
});

2 个答案:

答案 0 :(得分:0)

继developerCK提到的有关此行中jQuery语法错误的内容之后:

var id = $('#code').val;  // Should be: var id = $('#code').val();

通过切换到AJAX请求的jQuery语法,您可以节省大量的输入。以下是jQuery / AJAX入门的一些帖子:

A simple example

More complicated example

Populate dropdown 2 based on selection in dropdown 1

答案 1 :(得分:0)

试试这段代码:

$(document).ready(function() {
    'use strict';

    $('#check').click(function() {
        var id = $('#code').val();

        if (id==="") {
            $("#result").html('');
            return;
        } 

        $.ajax({
            type: 'GET',
            url: 'result.php',
            data: {
                id: id
            }
        }).done(function(data){
            $("#result").html(data);
        });
    });
});