【发布时间】:2019-07-07 09:12:16
【问题描述】:
我不知道如何显示所选类别的产品。以及如何使用该页面上的有限产品进行操作,可以单击到下一个或上一个以查看同一页面内的产品。
这是我数据库中的表:
类别
category_id
类别名称
类别描述产品
product_id
类型
产品名称
产品价格
图片
产品描述
产品日期
<?php
// show categories list
$connect = mysqli_connect("localhost", "root", "", "test");
$q = mysqli_query($connect,"select * from category ORDER BY category_name
ASC");
while ($res = mysqli_fetch_assoc($q))
{
echo '<li> <a href="counter.php?category_id='. $res['category_id']
.'">'.$res['category_name'].'</a></li>';
}
?>
<?php
if(isset($_GET['category_id'])){
$cat_id = $_GET['category_id'];
$conn = mysqli_connect("localhost", "root", "", "test");
$query = "SELECT product_id, product_name, product_price, image FROM product WHERE type = '$cat_id' ORDER BY product_id ASC ";
$result = mysqli_query($conn,$query);
$line = mysqli_fetch_array($result);
if (!$line) echo '';
$previd = -1;
$currid = $line[0];
if (isset($_GET['id'])) {
$previous_ids = array();
do {
$previous_ids[] = $line[0];
$currid = $line[0];
if ($currid == $_GET['id']) break;
$previd = end($previous_ids);
$line = mysqli_fetch_array($result);
} while ($line);
}
if ($previd > -1){
echo '<a href="counter.php?cat_id='.$cat_id.'&id='.$previd.'" class="prev_pic"><span>Prev</span></a>';
echo str_repeat(' ', 5);
$line = mysqli_fetch_array($result);
$query = "SELECT product_id, product_name, product_price, image FROM product WHERE type = '$cat_id' ORDER BY product_id ASC RAND() LIMIT 1";
$result = mysqli_query($connect, $query);
while ($row = mysqli_fetch_array($result)){
echo '<a href="counter.php?cat_id='.$cat_id.'&id='.$row['id'].'"class="random">Random</a>';
}
echo str_repeat(' ', 5);
if ($line) echo '<a href="counter.php?cat_id='.$cat_id.'&id='.$line[0].'" class="next_pic"><span>Next</span> </a><br /><br />';
echo "</div>\\r";
}
if(mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_array($result)) {
?>
<div class="col-md-3">
<form method="post" action="counter.php?action=add&id=<?php echo $row["product_id"]; ?>">
<div class="product">
<img src="img/<?php echo $row["image"]; ?>" style="width:100px; height:100px">
<h5 class="text-info"><?php echo $row["product_name"]; ?></h5>
<h5 class="text-danger"><?php echo "RM " . $row["product_price"]; ?></h5>
<input type="text" name="quantity" class="form-control" value="1">
<input type="hidden" name="hidden_name" value="<?php echo $row["product_name"]; ?>">
<input type="hidden" name="hidden_price" value="<?php echo $row["product_price"]; ?>">
<input type="submit" name="add" style="margin-top: 5px;" class="btn btn-success" value="+">
<input type="submit" name="minus" style="margin-top: 5px;" class="btn btn-success" value="-">
</div>
</form>
</div>
<?php
}
}
}
?>
点击类别列表时,预期的结果应该是显示产品。但是现在实际结果不是显示产品,它是空的。
【问题讨论】:
-
我认为
product_id=应该是category_id=from<a href="????">或$_GET['category_id']可以是$_GET['product_id'] -
print_r($_GET);在`if(isset($_GET['category_id'])){'之前使用这一行 -
并分享结果
-
结果是 Array ( [category_id] => 15 )
-
匹配category_id列表