-3
    $.ajax({
dataType : "html" ,
url: "jquery-loadMoreComments.php?lastComment="+ $(".postedComment:last").attr('id')&"section="+'.$sid.',   
success: function(html) {

我有这个从一个文件到另一个文件的 ajax 请求,我正在像这样在其他文件中检索 url 变量

$filtered = filter_input(INPUT_GET, "lastComment", FILTER_SANITIZE_URL);
$filtered1 = filter_input(INPUT_GET, "section", FILTER_SANITIZE_URL);

第一个变量被正确检索,但第二个变量没有进入另一个文件。并由第一个文件从 url 检索,$sid然后通过 ajax 发送到第二个文件以继续请求。

我把网址改成了这个

    url: "jquery-loadMoreComments.php?lastComment="+ $(".postedComment:last").attr('id'),section: '<?= $sid ; ?>',  

然后在第二个 php 文件中检索$sid我写的这个

$filtered = filter_input(INPUT_GET, "section", FILTER_SANITIZE_URL);

但它仍然没有执行。我认为$sid变量没有正确传递。在第一个 php 文件中,我没有编写任何代码来传递变量$sid,我该怎么做。

4

1 回答 1

1

我怀疑问题'.$sid'出在 URL 的末尾。您可能希望将其替换为 PHP 变量,但这看起来不像发生替换的上下文。

要进行替换,您需要回到 PHP 处理模式,例如

"&section=<?= $sid ?>",

此外,不要通过连接字符串来构造 URL 参数,而是使用data:参数来$.ajax提供对象。jQuery 将自动为您构造参数字符串,并使用正确的 URL 编码。所以应该是:

$.ajax({
    dataType : "html" ,
    url: "jquery-loadMoreComments.php",
    data: {
        lastComment: $(".postedComment:last").attr("id"),
        section: '<?= $sid ?>'
    },
    success: function(html) {
于 2012-09-22T00:44:17.130 回答