我已经使用 php、mysql 和 paypal 创建了(并且基本上完成了)购物车和店面。有一件事困扰着我。我反复读过将标记化数据存储在 mysql 列中的简单错误形式,但我不知道如何处理这种情况。
我允许管理员添加新产品,然后为产品设置可选的用户选择选项。例如,他们可能会添加一个名为“电话”的产品,然后添加一个名为“颜色”的选项,接受的选项是“黑色、白色、红色、灰色”。他们也可能出售没有配置选项的 A4 纸和一双有很多配置选项的鞋子(例如,女装和男装尺码的选择范围从 4 到 13 不等)。
因为我不知道一个产品会有多少个选项并且我不想强制执行硬限制我目前没有“option1”、“option2”等列,而是只有“option_data”看起来像“color|red,black,white,green#memory size|8gb,16gb,32gb”之类的东西,我在#上爆炸以获得不同的选项和| 获取选项名称和可能的数据,最后拆分数据,以获取单独的选项。我的商店然后解析所有这些并生成下拉表供用户选择等。
因此,考虑到存储这样的数据是非常不受欢迎的,而且我不知道一个产品会有多少选项,所以我不能只为每个选项创建一个列。我应该如何处理这个问题?
谢谢 :)