php - 检查类别是否存在于具有 csv 值格式的 MYSQLI 表列中
问题描述
我想获得所有具有我想要的类别的产品。问题是,在 products 表中,其中的“category”列具有 csv 格式的值(例如,“Edibles,Beverages,Topicals”)。我将如何检查我想要的类别是否存在于类别列中?
这是我到目前为止所拥有的
$category = $_POST["category"];
$query = "SELECT * FROM products WHERE category = '$category' ORDER BY rand()";
$result = mysqli_query($conn, $query);
$productsArray = mysqli_fetch_all($result, MYSQLI_ASSOC);
解决方案
您可以使用 LIKE 语句,以防并非所有类别都存储在一行中。
$query = "SELECT * FROM products WHERE category LIKE ('%".$category."%') ORDER BY rand()";
推荐阅读
- core-data - 保存 NavigationLink 选择
- python - 将 if 语句与 tkinter 事件一起使用
- python - 使用对数刻度时,Seaborn 热图会在颜色条上生成额外的刻度
- r - 查找多个值的汇总统计信息
- javascript - 在 JavaScript 中将十六进制颜色字符串转换为十六进制格式
- reactjs - 替换 .NET Core 3 中的 UseWebpackDevMiddleware?
- c# - 强制 ObservableCollection 的 CollectionChanged 事件
- javascript - 从本地存储数组中填充多选
- javascript - 如何使用 useRef 引用未渲染的 dom 节点?
- python - 如何在 FastAPI 上调用另一条路径?