Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
窗口位置重新加载无限PHP_Php_Html_Mysql - Fatal编程技术网

窗口位置重新加载无限PHP

窗口位置重新加载无限PHP,php,html,mysql,Php,Html,Mysql,我创建了一个“添加到购物车”按钮,其中包含要重新加载的窗口位置集。但当我点击它时,它会不断地无限地重新加载,或者永远不会停止。我只需要它重新加载,这样我仍然可以浏览更多的项目添加到我的购物车。如何将其设置在同一页上 <?php session_start(); $connect = mysqli_connect("localhost", "root", "", "tut"); if (isset($_POST["add"])) { if (isset($_SESSION["car

我创建了一个“添加到购物车”按钮,其中包含要重新加载的窗口位置集。但当我点击它时,它会不断地无限地重新加载,或者永远不会停止。我只需要它重新加载,这样我仍然可以浏览更多的项目添加到我的购物车。如何将其设置在同一页上

<?php
session_start();
$connect = mysqli_connect("localhost", "root", "", "tut");

if (isset($_POST["add"])) {
    if (isset($_SESSION["cart"])) {
        $item_array_id = array_column($_SESSION["cart"], "product_id");
        if (!in_array($_GET["id"], $item_array_id)) {
            $count = count($_SESSION["cart"]);
            $item_array = array(
                'product_id' => $_GET["id"],
                'item_name' => $_POST["hidden_name"],
                'product_price' => $_POST["hidden_price"],
                'item_quantity' => $_POST["quantity"]
            );
            $_SESSION["cart"][$count] = $item_array;
            echo '<script>window.location.reload()</script>';
        }
        else {
            echo '<script>alert("Products already added to cart")</script>';
            echo '<script>window.location.reload()</script>';
        }
    }
    else {
        $item_array = array(
            'product_id' => $_GET["id"],
            'item_name' => $_POST["hidden_name"],
            'product_price' => $_POST["hidden_price"],
            'item_quantity' => $_POST["quantity"]
        );
        $_SESSION["cart"][0] = $item_array;
    }
}

if (isset($_GET["action"])) {
    if ($_GET["action"] == "delete") {
        foreach($_SESSION["cart"] as $keys => $values) {
            if ($values["product_id"] == $_GET["id"]) {
                unset($_SESSION["cart"][$keys]);
                echo '<script>alert("Product has been removed")</script>';
                echo '<script>window.location.reload()</script>';
            }
        }
    }
}

如果使用
window.location.reload()
重新加载页面,肯定会再次发布数据

因此,请尝试使用下面的解决方法

$currentpage_url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
echo '<script>window.location.href="'.$currentpage_url.'";</script>';
$currentpage\u url=“http://$\u服务器[http\u主机]$\u服务器[REQUEST\u URI]”;
echo'window.location.href=“”.$currentpage_url.”;

你应该缩进你的代码,这很难阅读。我复制了代码,但它不起作用(“找不到对象”)