2009-12-06 180 views
0

我得到了一个论坛。当我点击一个线程时,它通过URL将GET变量传递给显示该线程的另一个php页面。从PHP发送变量到jquery?

url?threadid=10 

并且我在底部得到了回复表单。当用户点击提交回复时,它会执行通过ajax调用php的jquery。我必须将threadid变量传递给ajaxcalled的php文件,但我不知道该怎么做。

香港专业教育学院试图phpfile:

$threadid = $_GET['threadid']; 
    include "jsfile.php"; 

,然后在jsfile:

<script ...> 
    $.get("static/js/ajaxcall_reply.php", {threadid: '<?php echo $threadid ?>'}, function(data) { 
    </script> 

但是,这并不工作。我该怎么做?什么是正确的方式去这里。饼干? JSON?请帮忙!

编辑:btw ...不是这种方法不好。因为要能够在js文件中有php代码,我必须将其包含为一个php文件,并且无法使用它在PHP文件中链接到它?我是有点失去了...

+4

你有一个0%的接受记录与23个问题(全部答案)。现在是时候用正确的答案来标记其中的一些。 – PetersenDidIt 2009-12-06 23:17:30

+0

你的方法是正确的。也许是编程错误?打开error_reporting和display_errors或检查您的错误日志。 – 2009-12-06 23:19:25

+0

您在php页面中提供的jquery示例是否显示线程和回复表单,或者是否包含在其他文件中?要查看php变量$ threadid,您需要在与php相同的页面中调用jquery调用。 – Carl 2009-12-06 23:21:30

回答

2

threadid是一个请求变量,所以我认为你需要得到来自$_GET阵列:

$.get("static/js/ajaxcall_reply.php", {threadid: '<?php echo $_GET["threadid"] ?>'}, function(data) { 

This page更详细地介绍了$_GET阵列。它包含来自URL的请求变量。我之前建议的阵列($_REQUEST)也可以工作。

+0

使用$ _GET ['threadid']会不会更好? – middus 2009-12-06 23:19:45

+0

是的,$ _GET也可以工作,并且确实会确保它使用URL变量。在其他情况下可避免一些潜在的变量问题。我会改变它。 – 2009-12-06 23:22:05

+1

也许他正在$ _REQUEST上调用extract(),我永远不会这么做。 – 2009-12-06 23:32:57