1

問題についてもっと具体的に説明する必要があることはわかっていますが、それが何であるかはわかりませんが、回答が得られたら投稿を修正します。

ここに問題の単純な 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 の周りで動作しなくなるということですが、その理由はわかりません。そして、それはローカルサーバー上で動作します。

助けてくれてありがとう。

4

1 に答える 1

1

var addFavPhp = '../functions/addfav.php';が間違っているようです。ajax を実行するときは、http URL を使用する必要があります。みたいな/path/to/addfav.php

于 2013-02-18T19:58:35.250 に答える