使用AJAX的PHP函数调用-更新cookie

使用AJAX的PHP函数调用-更新cookie,php,ajax,cookies,request,Php,Ajax,Cookies,Request,我目前正在一家在线商店尝试更新我的cookie。 当商店中特定产品的数量更新时,必须更新cookie并重新加载页面 我正试图通过JQuery的onchange事件来实现这一点。 我将其编码如下: $.ajax({ type: 'POST', url: "./DAO/WinkelwagenDAO.php", data: {function: "UpdateAantal", productId: productId, Aanta

我目前正在一家在线商店尝试更新我的cookie。 当商店中特定产品的数量更新时,必须更新cookie并重新加载页面

我正试图通过JQuery的onchange事件来实现这一点。 我将其编码如下:

$.ajax({
            type: 'POST',
            url: "./DAO/WinkelwagenDAO.php",
            data: {function: "UpdateAantal", productId: productId, Aantal: aantal},
            success: function (data) {
                console.log("Succeeded!", data);
                //location.reload(); //To reload page 

            },
            error: function (err) {
                console.log("Something went wrong in the AJAX-request: ", err);
            }
            });
        });
这是有效的,并且正在记录正确的内容

现在,对于我的PHP文件,我捕获了以下事件:

if (isset($_POST['function'])) {
    $action = $_POST['function'];
    switch ($action) {
        case 'UpdateAantal' :
            echo "\nAmount to change for ProductId: " . $_POST['productId'] . " use function: " . $_POST['function'] . " set amount to: " . $_POST['Aantal'];
            WinkelwagenDAO::UpdateAantal($_POST['productId']);
    }
}
这里将调用UpdateAntal函数,该函数在php_文件中定义。因此,我必须包含另一个PHP文件来访问一些getter/setter。我认为这里也有一个问题,因为当我包含_once'/Model/winkelvagenitem.php'时;它给出一个警告,即通过class/class/…找不到文件。。。这是正确的。当我做一个文件时,_的存在就像下面的代码一样,它说文件确实存在,但有点卡在这里

public static function UpdateAantal($productId) {
    if (file_exists('Model/WinkelwagenItem.php')) {
        //echo "\nFile that you wanted to import in winkelwagenDAO does exist!\n<br>";
        include_once 'Model/WinkelwagenItem.php';
    } else {
        //echo "File that you wanted to import in WinkelwagenDAO does NOT exist!";
    }

    echo "\nUpdateAantal function called";
    $Array = self::getWinkelwagenItems();

    echo $Array[0]->getProductId(); //HERE IT GOES WRONG

    if (isset($_COOKIE["winkelwagen"])) { //COOKIE EXISTS?
        $Array = self::getWinkelwagenItems();
        $index = 0; //positie bijhouden

        foreach ($Array as $product) {
            if ($productId == $Array[$index]->getProductId()) {
                //echo $productId . " == " . $Array[$index]->getProductId();

                $Array[$index]->setAantal($_POST['Aantal']);
                $SerializeArray = serialize($Array);
                setcookie("winkelwagen", $SerializeArray);

                break; //Quit if match
            } else {
                $index++;
            }
        }
    } else {
        echo "This cookie did not exist";
    }
}`

有人能帮我吗?整天都在尝试

你知道你可以使用javascript访问cookie,除非它们是仅限http的?cookie存储在客户端,因此你不必点击服务器来更新cookie。我的示例中如何做到这一点?
Source/Model/WinkelwagenItem -> Getters and setters
Source/DAO/WinkelwagenDAO -> UpdateAantal function