ajax php初学者基本功能

时间:2013-01-15 11:09:15

标签: php jquery ajax

嗨,我不确定从哪里开始,但我只是想学习ajax和php,但我不确定我在这里缺少什么。

我想要设置这个代码,这样每次点击.test-ajax时它都会增加一个数字,因为我正在寻找它如何使用php我希望能在php文件中发生增量。< / p>

这是我的jQuery

$(document).ready(function(){
    $('.test-ajax').live('click', function(event)
    {
        $.ajax({
            url: 'variableplusone.php',
            type: 'post',
            data: { offset: 2 },
            success: function(offset) {
                alert(offset);
            }
        });
    });
});

和我的variableplusone.php文件......

<?php
$x = add_one();

function add_one()
{
    if (isset($_POST['offset']))
    {
        $offset = $offset;
        echo $offset;
    }
}

return $x;

只是想知道如何在php文件中获取$offset的值,然后返回并更新?

3 个答案:

答案 0 :(得分:1)

您可以执行echo $x;,然后在成功处理程序中,您将在offset变量中使用它。

或者,如果您坚持使用更复杂的结构,我建议您使用AJAX查看http://php.net/manual/en/function.json-encode.php和JSON请求。

答案 1 :(得分:1)

function add_one() {
    $offset = 0;
    if(isset($_POST['offset'])) {
        $offset = $_POST['offset'];
        $offset++;
    }

    return $offset;
}

$x = add_one();
die("$x");

显然,你需要检查你的$ _POST ['offset']是一个数字和其他健全性检查。要将值返回到javascript,它就足以回显它,或者死掉它。在javascript中,您将收到一个值,在您的示例中为3(您传递2,PHP将其递增1)。

编辑:要“保留”对数字的更改,您可以选择:您可以在客户端使用javascript或cookie记住它,或者在服务器端使用会话变量记住它。

$(document).ready(function(){
    myVariable = 2;

    $('.test-ajax').live('click', function(event)
    {
        $.ajax({
            url: 'variableplusone.php',
            type: 'post',
            data: { offset: myVariable },
            success: function(offset) {
            alert(offset);
            myVariable = offset;
            }
        });
    });
});

以上是在客户端记住它的一种方法。请注意,如果用户刷新页面,则会将其重置为默认值(2)。

答案 2 :(得分:0)

你的返回$ x没有意义,你的$ x是空的,无论如何,因为你的函数不会返回一个值。 我想你希望你的函数返回$ offset,然后在你的php文件中回显$ x。 你的php文件的输出将在你的js的偏移变量中 - 所以在你的情况下它是偏移量。

类似这样的事情

<?php
$x = add_one();

function add_one()
{
    if (isset($_POST['offset']))
    {
        return $_POST['offset']++;
    }
}

echo $x;
?>