Ajax脚本无法正常工作

时间:2013-02-18 19:54:46

标签: php jquery ajax

我知道我应该更具体地解决这个问题,但我不知道它是什么,但一旦得到答案,我就会解决这个问题。

这是简单的ajax脚本的问题,但不知怎的,它不起作用。我在代码上看不到任何错误= /

jQuery部分:

    $(document).ready(function()
{   
    var addFavPhp = '../functions/addfav.php';
    var orange = 'orange';
    var favLinkError = false;
    var favNameError = false;

    $('#addFavButton').click(function()
    {
        var favLink = $('.favLinkInput').val();
        var favName = $('.favNameInput').val();
        var fileName = $('.file').val();

        if(favLink=="")
        {
            $('.favLinkInput').css('border-color',orange);
            favLinkError = true;
        }

        if(favName=="")
        {
            $('.favNameInput').css('border-color',orange);
            favNameError = true;
        }

        if((favLinkError==false) && (favNameError==false))
        {
            $.post(addFavPhp,{favLink:favLink,favName:favName,fileName:fileName},function(addFav)
            {
                $('.favLinkInput,.favNameInput').val('').css('border-color','');
                $('.file option[value=""]').attr("selected", "selected");
                location.reload();
            });
        }
    });
});

和php部分:

    <?php session_start(); 

    include('../functions/connect.php');

    if(!empty($_SESSION['username']))
    {
        $username = $_SESSION['username'];
    }else
    if(!empty($_COOKIE['PHPCOOKID']))
    {
        $cookie = htmlspecialchars(trim($_COOKIE['PHPCOOKID']));
        $explode = explode('-', $cookie);
        $username = $explode['0'];
    }

    $favLink = htmlspecialchars(trim($_POST['favLink']));
    $favName = htmlspecialchars(trim($_POST['favName']));
    $fileName = htmlspecialchars(trim($_POST['fileName']));

    $d = array($username,$favLink,$favName,$fileName);
    $req = $DB->prepare('INSERT INTO favs (username,favLink,favName,favFile) VALUE (? , ? , ? , ?)');
    $req->execute($d);

?>

我发现它停止在$ .post附近工作,但我无法弄明白为什么。它可以在本地服务器上找到。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

看起来var addFavPhp = '../functions/addfav.php';行是错误的。在做ajax时你必须使用http urls。像/path/to/addfav.php

这样的东西