首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >php: Mysql数据库设计和工作流,需要更多的创意!

php: Mysql数据库设计和工作流,需要更多的创意!
EN

Stack Overflow用户
提问于 2011-05-08 14:28:32
回答 1查看 830关注 0票数 0

我想知道是否有人能帮我完成php-mysql的设计。

我现在的应用程序。(或多或少是一个调查应用)它允许用户在数据库中的其他表中存储有关针对特定功能的问题。

例如,用户可以张贴一辆汽车:然后询问用户关于他的汽车的安全因素。

汽车分号: Id,品牌,安全

品牌=快速

安全= ABS=ABS (防抱死制动系统),DriverAirBag=Air袋子

问题数据库: ID,问题,回答,目标,键入

数据:

问题:你喜欢的安全选项

Answer:ABS=ABS (防抱死制动系统),DriverAirBag=Air袋

目标:安全

type=checkbox

问题是,要显示存储的问题,我必须。

1)在隐藏输入中循环遍历所有问题、回波问题和回波目标,

2)爆炸应答字段两次(第1次w/ ",以获得每个答案,以及数据库中的内容与用户友好的text1之间的"=“差异”。

3)选中“类型”以选择“显示类型”(3选项复选框、“选中”、“文本”)

4)为用户设置此显示类型和显示1!(愚蠢我知道:())

例:

<复选框value=$expolde>$explode1

所有这些步骤都使得维护变得非常困难,因为在代码中嵌入了任何形式的显示:(,

有什么想法吗?)?

EN

回答 1

Stack Overflow用户

发布于 2011-05-08 14:55:20

我会把桌子分成一对多的设计,比如:

代码语言:javascript
运行
复制
 CarTable
       ID
       Brand
       Model

 CarInfo
      CarID      # Foreign key to Car Table
      Category   # Optional: Safety, Performance, Looks, etc...
      Value      # Specific Info Value: ABS, Air Bags, etc...

在这种设计中,您可以为每辆车拥有0到多个CarInfo记录,这样就可以更容易地添加/删除汽车的信息记录,而不必像原来的设计那样解析一个潜在的复杂字段。

根据您的最终目标是什么,您的试题表设计可能是相似的:

代码语言:javascript
运行
复制
 Question
    ID
    Description

 QuestionInfo
    QuestionID
    Category
    Value

还有一些你应该考虑的事情和你应该问自己的问题:

  1. 如何处理自定义用户输入?如果user1输入“安全气囊”,user2请求“驱动端AirBag”,您将如何匹配这两个?
  2. 确保您在尝试解决问题之前理解了问题。从你的问题中,我不清楚你想做什么(这可能是我做的,也可能是这里问题的有限大小)。
  3. 在输出原始数据库值时要小心(比如试题表中的类型字段)。只要数据库值不能由用户输入或经过适当的消毒,这是很好的。如果您不熟悉"SQL注入“,请搜索它。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5928022

复制
相关文章

相似问题

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