2011-04-04 110 views
0

我正在使用jQuery .load()来重新加载我运行MySQL查询的div。查询的一部分需要一个变量的值,它本身是由$ _GET。当再次.load()那个div时,$ _GET会丢失值,就像任何持有$ _GET值的变量一样。

我的代码有点像这样:

<div id="foo"> 
<?php 
    $var = $_GET['p']; 
    //sql query 
    echo $var; 
    //echo sql query 
?> 
</div> 

随着#foo作为DIV被重新负载()的使用jQuery。

如果我硬编码,例如$var = 7,问题的页面将工作。所以我知道这在其他地方不是问题。

任何帮助?

+1

可你过去你的jQuery负荷通话,因为我认为,当div更新时,你没有更新你的QueryString。 – 2011-04-04 20:56:34

+1

当您调用“.load()”时,您是否将参数值传回? – Pointy 2011-04-04 20:57:03

回答

3

您还需要将您的参数传递给load()调用。原始请求参数不会存储在任何地方。你可能会需要像

$('#foo').load('my/url?p=<? $_GET['p'] ?>'); 

我不知道如果这是正确的PHP语法,但你明白了。您也可能想要为查询字符串编码该值。

1

@jcm

$('#foo').load('my/url?p=<?php echo $_GET['p'] ?>'); 

手短开口不是默认启用的,你必须回声或打印你怎么输出

0
$('#content').load('myfolder/script_file.php?id=123');