PHP mysql会话数组



我有一个小问题。

会话数组中存储的值很少。这些值是产品的ID。之后,我想显示我的数据库中的产品,但这对我来说不合适。有人能帮我一点吗?:((我还在学习:(

<?php
include 'includes/dbconnect.php';
$orderid = $_SESSION['order'];
foreach ($orderid as $value) {
$sql="SELECT * FROM product WHERE productID LIKE '%$value%'";
$result=$conn->query($sql);
while($row=$result->fetch_assoc()){ 
echo '<tr>';
echo '<td>'.$row["tag"].'</td>';
echo '<td>'.$row["price"].',- Kč</td>';
echo '<td><a href="product.php?id='.$row["productID"].'"><img src="images/'.$row["tag"].'.jpg" width=70"></a></td>';
echo '<td>1</td>'   ;
echo '<td><a href="#" class="btn btn-danger btn-lg">X</a></td>';
}
}
?>

var_dump($orderid(;显示:

array(1) {
["order"]=> array(10) {
[0]=> string(2) "44"
[1]=> string(2) "46"
[2]=> string(2) "44"
[3]=> string(2) "54"
[4]=> string(1) "1"
[5]=> string(2) "44"
[6]=> string(1) "1"
[7]=> string(2) "44"
[8]=> string(2) "47"
[9]=> string(2) "74"
}
}

为了SO的目的,我将发表我的评论作为答案:

在$sql查询中,不要使用LIKE '%$value%'";,而是使用以下内容:LIKE '". $value ."'";

这样可以确保我们实际得到变量的值。

最新更新