注意:未定义索引产品名称
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了注意:未定义索引产品名称相关的知识,希望对你有一定的参考价值。
我有这段代码,我不明白为什么我仍然有此错误,我已经尝试了所有解决方案,但无法解决此问题:-通知:未定义的索引:product_price-通知:未定义的索引:product_quantity-通知:未定义的索引:product_name。我检查了所有变量名称和数据库字段名称,并且一切正常,但是仍然出现此错误。
<?php
session_start();
$connect = mysqli_connect("localhost", "root", "", "storedb");
if(isset($_POST["add_to_cart"]))
if(isset($_SESSION["shopping_cart"]))
$item_array_id = array_column($_SESSION["shopping_cart"], "product_id");
if(!in_array($_GET["produs_id"], $item_array_id))
$count = count($_SESSION["shopping_cart"]);
$item_array = array(
'product_id'=>$_GET["produs_id"],
'product_name'=>$_POST["hidden_name"],
'product_price'=>$_POST["hidden_price"],
'product_quantity'=>$_POST["cantitate"]
);
$_SESSION["shopping_cart"][$count] = $item_array;
echo '<script>window.location="cart.php"</script>';
else
echo '<script>alert("Item Already Added")</script>';
else
$item_array = array(
'product_id' => $_GET["produs_id"],
'product_name' => $_POST["hidden_name"],
'product_price' => $_POST["hidden_price"],
'product_quantity' => $_POST["cantitate"]
);
$_SESSION["shopping_cart"][0] = $item_array;
if(isset($_GET["action"]))
if($_GET["action"] == "delete")
foreach($_SESSION["shopping_cart"] as $keys => $values)
if($values["product_id"] == $_GET["produs_id"])
unset($_SESSION["shopping_cart"][$keys]);
echo '<script>alert("Item Removed")</script>';
echo '<script>window.location="cart.php"</script>';
?>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Tech Store</title>
<link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
<link rel="stylesheet" type="text/css" href="style.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" type="text/css" href="slidestyle.css">
</head>
<body>
<div style="clear:both"></div>
<br />
<h3 style="color: white;">Order Details</h3>
<div class="table-responsive">
<table style="border:2px solid red;">
<tr>
<th width="40%" style="color: white;">Item Name</th>
<th width="10%" style="color: white;">Quantity</th>
<th width="20%" style="color: white;">Price</th>
<th width="15%" style="color: white;">Total</th>
<th width="5%" style="color: white;">Action</th>
</tr>
<?php
if(!empty($_SESSION["shopping_cart"]))
$total = 0;
foreach($_SESSION["shopping_cart"] as $keys => $values)
?>
<tr>
<td style="color: white;"><?php echo $values["product_name"]; ?></td>
<td style="color: white;"><?php echo $values["product_quantity"]; ?></td>
<td style="color: white;"><?php echo $values["product_price"]; ?> Lei</td>
<td style="color: white;"> <?php echo number_format($values["product_quantity"] * $values["product_price"], 2);?></td>
<td style="color: white;"><a href="cart.php?action=delete&produs_id=<?php echo $values["product_id"]; ?>"><span class="text-danger">Remove</span></a></td>
</tr>
<?php
$total = $total + ($values["product_quantity"] * $values["product_price"]);
?>
<tr>
<td style="color: white;" colspan="3" align="right">Total</td>
<td style="color: white;" align="right">$ <?php echo number_format($total, 2); ?></td>
<td></td>
</tr>
<?php
?>
</table>
</div>
</div>
</body>
</html>
答案
一件事很奇怪...尚未设置购物车时使用
$_SESSION["shopping_cart"] = [$item_array];
代替
$_SESSION["shopping_cart"][0] = $item_array;
如果未设置,则如何设置[0]键?
以上是关于注意:未定义索引产品名称的主要内容,如果未能解决你的问题,请参考以下文章
“注意:未定义的变量”、“注意:未定义的索引”和“注意:未定义的偏移量”使用 PHP
“注意:未定义的变量”、“注意:未定义的索引”和“注意:未定义的偏移量”使用 PHP
“注意:未定义的变量”、“注意:未定义的索引”和“注意:未定义的偏移量”使用 PHP
“注意:未定义的变量”、“注意:未定义的索引”和“注意:未定义的偏移量”使用 PHP