首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php mysql控制post表单域

php mysql控制post表单域
EN

Stack Overflow用户
提问于 2012-12-17 19:51:10
回答 2查看 135关注 0票数 0

我正在尝试创建一个用于存储汽车信息的数据库。

汽车可以分为新车、二手车和租车。每种汽车类别都有不同的属性,因为新车有不同的二手车不需要的功能,二手车和租车类别的情况相同。将来可以使用应用程序管理员侧的表单管理器为这三个类别添加、删除属性。

目前,我将这些存储在1个产品表中,其中包含这3个类别所需的所有属性。

代码语言:javascript
复制
PRODUCT(id,title,description,model,kilometer,enginsize,conditions,.....,.,...)

由于每个类别的表单被提议从管理控制管理,我正在寻找一个新的可扩展的数据库。

代码语言:javascript
复制
current development:

all common attributes in Products

PRODUCT(pid,title,description,...)

CATEGORY(cid,cname) new,used,rent

form_field(formfield_id,name,type)  to store all attributes that are not common

form_field_category(formfield_id,cid) to store category associated attributes

form_post_data(post_id,pid,formfield_id,value) to store submitted data

有什么建议吗。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-31 02:52:22

您需要的是一个Entity-Attribute-Value model

如果表form_post_data中的大多数值都是文本,只需将其设置为varchar字段。但是,如果您存储的是数值、选项和其他类型(您可能希望对其进行过滤),请查看本文An alternative way of EAV modelling

对于可以有多个值的属性,请参阅后续文章EAV multi-value fields

票数 0
EN

Stack Overflow用户

发布于 2012-12-17 19:59:05

据我所知,你有两种类型的属性:通用的和特定类别的。

所以做一些类似这样的事情:

代码语言:javascript
复制
PRODUCT(pid,title,description,...)

CATEGORY(cid,cname) new,used,rent

additional_info_category(aid, cid, name)

adition_info_data (adataid, aid, pid, data)

应该足够了,你只需要加载所有的产品信息加上其他信息中的字段,这与类别相关。

如果添加新字段是特定于类别的,那么添加新字段应该没有问题,但我的问题是:您确定不需要添加公共字段吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13913642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档