首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >这个AJAX脚本如何通过post将变量传递给PHP脚本?

这个AJAX脚本如何通过post将变量传递给PHP脚本?
EN

Stack Overflow用户
提问于 2011-09-06 21:20:03
回答 4查看 2.3K关注 0票数 1

我正在学习本教程。

http://www.9lessons.info/2009/04/exactly-twitter-like-follow-and-remove.html

关于如何实现一个类似twitter的跟随/取消跟随按钮。

我对AJAX也是完全陌生的,所以我在学习的同时也在摸索。

通常情况下,通过表单传递变量并将操作设置为POST,然后使用PHP进行操作。

然而,这里有一段javascript (用于关注用户)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="text/javascript" >
$(function() 
{
    $(".follow").click(function(){
        var element = $(this);
        var I = element.attr("id");
        var info = 'id=' + I;
        $("#loading").html('<img src="loader.gif" >');

        $.ajax({
            type: "POST",
            url: "follow.php",
            data: info,
            success: function(){
                $("#loading").ajaxComplete(function(){}).slideUp();
                $('#follow'+I).fadeOut(200).hide();
                $('#remove'+I).fadeIn(200).show();
            }
        });
        return false;
    });
});
</script>

假设我们有这段html/php

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
$sql=mysql_query("Some SQL Statement that grabs users");
while($row=mysql_fetch_array($sql))
{
    $id=$row["user_id"];
?>
<div id="follow<?php echo $id;?>">
    <a href="#" class="follow" id="<?php echo $id;?>">
    <span class="follow_b"> Follow </span></a>
</div>
<div id="remove<?php echo $id;?>" style="display:none"> 
    You Following <a href="#" class="remove" id="<?php echo $id;?>">
    <span class="remove_b"> remove </span></a>
</div>
<?php
}
?>

follow.php需要的POST变量叫什么?“成功”是做什么的,它是如何与follow.php交互的?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-09-06 21:26:08

PHP将接收一个名为' id‘的POST变量,该变量的值存储在id为ID的页面元素中。

成功处理程序是一个脚本构造,上面写着“如果ajax请求成功,则执行此代码”。还有一个“error”等价物,它只在某些东西爆炸时才会执行。success本身并不与PHP交互。这只是一些代码,如果PHP脚本没有返回错误代码,这些代码就会运行。

许多ajax脚本通过操作响应的HTTP错误代码来指示成功/失败。2xx =一切正常,调用success处理程序。任何4xx或5xx都会调用error处理程序。

票数 1
EN

Stack Overflow用户

发布于 2011-09-06 21:25:51

我相信你想要$_POST' id‘来访问传入的id参数。

当follow.php脚本成功完成时,将调用"success“。

票数 1
EN

Stack Overflow用户

发布于 2011-09-06 21:27:19

PHP调用将数据编码为POST,并将其发送到jQuery脚本。在这种情况下,脚本似乎在同一个页面上,所以我猜它会ping自己。AJAX以异步方式(根据定义)完成此操作。

当ajax接收到来自php页面的响应时,将触发成功函数。它可以让你知道数据已经往返,并且你期望从php脚本得到的任何数据都被接收到了。这是您想要按顺序放置下一个功能的位置,或者任何依赖于您从.php返回的数据的位置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7326314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文