Ich habe erfolgreich einen Einkaufswagen gebaut und alles funktioniert gut. Hier ist, was ich erreichen will:So arbeiten Sie mit benutzerdefinierten Warenkorb in PHP
- , wenn ein Benutzer auf den in den Warenkorb Button klickt, sollte es in den Warenkorb gelegt und refreshe die gleiche Seite mit dem zusätzlichen Element Update hinzufügen.
- Wenn ein Benutzer auf die Schaltfläche "Bild" oder "Ansicht" klickt, wird das Bild des Objekts angezeigt.
mein Problem ist, wie folgt: 1. Wenn ein Benutzer auf das Hinzufügen klickt den Warenkorb-Taste, fügt sie aber Umleitungen an der cart.php-Datei (die nicht das, was ich will, ich will die Seite neu zu laden mit dem zusätzlichen Element Update) 2. ich habe versucht, mit:
$head = $_SERVER['HTTP_REFERER'];
echo '<script>location.href="'.$head.'"</script>';
exit();
es scheint gut zu funktionieren, wenn ein Benutzer klickt in den Warenkorb Button, aber wenn ein Benutzer klickt auf das Bild oder klicken sie auf Schaltfläche Ansicht, es refrehes die gleiche Seite, ohne dass der Benutzer das Bild sehen kann.
Unten ist mein Code.
//My custom shopping cart script
if (isset($_GET['pid'])) {
$pid = $_GET['pid'];
$wasFound = false;
$i = 0;
// If the cart session variable is not set or cart array is empty
if (!isset($_SESSION["cart_array"]) || count($_SESSION["cart_array"]) < 1) {
// RUN IF THE CART IS EMPTY OR NOT SET
$_SESSION["cart_array"] = array(0 => array("item_id" => $pid, "quantity" => 1));
} else {
// RUN IF THE CART HAS AT LEAST ONE ITEM IN IT
foreach ($_SESSION["cart_array"] as $each_item) {
$i++;
while (list($key, $value) = each($each_item)) {
if ($key == "item_id" && $value == $pid) {
// That item is in cart already so let's adjust its quantity using array_splice()
array_splice($_SESSION["cart_array"], $i-1, 1, array(array("item_id" => $pid, "quantity" => $each_item['quantity'] + 1)));
$wasFound = true;
} // close if condition
} // close while loop
} // close foreach loop
if ($wasFound == false) {
array_push($_SESSION["cart_array"], array("item_id" => $pid, "quantity" => 1));
}
}
$head = $_SERVER['HTTP_REFERER'];
//header("location: $head");
echo '<script>location.href="'.$head.'"</script>';
exit();
}?>
<!--My Products item Display-->
<div class="col-md-4">
<div class="product-img product-img-brd">
<a href="pro_single.php?pid='.$id.'"><img class="full-width img-responsive" src="../../backend/'.$product_img.'" alt="'.$product_name.'"></a>
<a class="product-review" href="pro_single.php?pid='.$id.'">Quick review</a>
<a class="add-to-cart" href="cart.php?pid='.$id.'" ><i class="fa fa-shopping-cart"></i> Add to cart </a>
<div class="product-price">
<span class="title-price">$'.$price.'</span>
</div>
</div>
Sie können Ajax verwenden, um Artikel in den Warenkorb zu senden, und Sie müssen die Seite nicht neu laden – JoshKisb
@JoshKisb ok, wie kann ich das erreichen? – emekamba
ist Bild anzeigen, in den Warenkorb und den obigen Code alle eine Seite hinzufügen? – rtfm