使用jquery .get检索发送到php文件的信息

时间:2010-11-14 19:31:44

标签: php jquery

我有这个函数将数据发送到php文件,但由于某种原因,似乎php文件没有获得jquery发送给它的数据。

这是jquery代码:

<script type="text/javascript" src="JS/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $(".hide").hide();
        $("#cake").hide();

        var boz = $('#cake').val();
        var search = $('#search').val();

    $.get("petition_send.php", { id: boz, q: search }, function(data){
        alert("Data Loaded: " + data);
     });

    $('.show').click(function checkPass(){
        $(".hide").slideDown();
    });

    });
</script>

现在,这是php文件:

<?php
$xmlDoc = new DOMDocument();

include_once("petitionhint.php");

$xmlDoc->loadXML($xmlout);

$x=$xmlDoc->getElementsByTagName('friend');

//Get the q parameter from URL
$q      =   $_GET["q"];
$id     =   $_GET["petition_ID"];

//Lookup all links from the xml file if length of q>0
if(strlen($q)>0)
{
    $hint = "";

    for($i=0; $i<($x->length); $i++)
    {
        $y=$x->item($i)->getElementsByTagName('name');
        $z=$x->item($i)->getElementsByTagName('url');
        $w=$x->item($i)->getElementsByTagName('photo');
        $l=$x->item($i)->getElementsByTagName('location');

        if ($y->item(0)->nodeType==1)
        {
            //Find a link matching the search text
            if (stristr($y->item(0)->childNodes->item(0)->nodeValue,$q))
            {
                if($hint != ""){
                        $hint .= "<br />";
                   }
                    $hint .= "<h1 id='poli'><a id='blue' href='";
                    $hint .= $z->item(0)->childNodes->item(0)->nodeValue;
                    $hint .= "&amp;petition_ID='$id' >";
                    $hint .= $y->item(0)->childNodes->item(0)->nodeValue;
                    $hint .= "</a> <br /><a id='green'>";
                    $hint .= $l->item(0)->childNodes->item(0)->nodeValue;
                    $hint .= "</a>";
                    $hint .= "<br/><img width='30' height='30' id='schmidt' src='features/";
                    $hint .= $w->item(0)->childNodes->item(0)->nodeValue;
                    $hint .= "' /></h1>";
            }
        }
    }
}

// Set output to "no suggestion" if no hint were found
// or to the correct values
if($hint == "")
{
    $response = "No suggestions";
} else
{
    $response   =   $hint;
}

//output the response
echo $response;
?>

当我尝试将“$ id”变量包含在php代码的部分中时:

$hint .= "&amp;petition_ID=$id' >";

它没有出现。 $ id变量不会出现。

2 个答案:

答案 0 :(得分:2)

您要发送参数idboz)和qsearch),但您正在阅读参数qpetition_ID

答案 1 :(得分:2)

您没有从$ _GET中选择正确的元素:

$id     =   $_GET["petition_ID"]; 

$id     =   $_GET["id"]; 

$hint .= "&amp;petition_ID='$id' >"; 

$hint .= "&amp;petition_ID=$id' >"; 

也可以尝试jquery调用

    $.get("petition_send.php", { "id": boz, "q": search }, function(data){ 
    alert("Data Loaded: " + data);

或考虑将“id”更改为其他内容。