【问题标题】:Dynamic form from mysql table来自mysql表的动态表单
【发布时间】:2013-11-24 03:23:53
【问题描述】:

我正在使用 php,使用 mysql 数据库构建网站。

用户可以记录各种内容,并且应该能够从表格中选择他想要记录的内容。但我想不出最聪明的方法来做到这一点。

假设我有一个 logging_types 表,其中包含 type_id、type_name。 默认情况下,用户无法记录任何内容。首先,他们必须进入设置,在那里他们将看到一个 logging_type 和一个复选框,让用户能够选择他想要记录的内容。

在主表“日志”中,我将为每种日志记录类型设置一个字段。

在用户表中,我还需要在此处为​​每种日志记录类型设置一个字段,使用 YES/NO 或 int 使用户可以选择他想要记录的内容。

还有其他方法可以避免日志和用户表中的所有这些字段吗?

【问题讨论】:

    标签: php mysql sql forms


    【解决方案1】:

    这个问题真的很难回答,好像你似乎知道你的意思,你并没有真正投入太多。对于你应该展示一些代码的 SO 来说,这也有点离题。

    尽管如此,这里先有几个唠叨:

    1. 用户讨厌必须打勾。

      如果您希望用户喜欢您(和您的网站),请尽量使其直观。将您的表格整齐地布置并允许用户单击并输入相应的框。

    2. 永远不要相信用户提供的数据。

      如果您的数据将按照您的建议在数据库中使用,那么您需要确保数据干净且安全。使用 JS 确保输入正确类型的数据,并确保正确使用 PHP(使用准备好的语句)在数据被接受之前对其进行清理。请记住,通过任何客户端检查来伪造输入并不需要太多努力 - 永远不要相信用户数据。

    大多数此类输入是通过 html SELECT 实体完成的。显示了一个具有多个选项的组合框。可见:

    在此处选择数据类型。在此处输入数据。

    如果您有多种类型的数据,这非常有效,所有这些都需要相同数量的类似格式的数据。如果输入表单需要完全不同,它就会失败,尽管即使这样也可以做到,您只需隐藏或添加一些表单元素(隐藏不需要的表单元素会容易得多)

    如果您只有 3 或 4 个不同的表格或表格,您还可以提供选项卡式/文件夹视图。

    您为什么不看看其他人正在做的事情与您正在努力实现的目标相似。如果您非常喜欢它,请弄清楚他们是如何做到的并复制它。这样做不太可能侵犯任何版权或专利。

    问问自己您的系统使用起来有多容易,是否直观?我的用户会有一个令人讨厌的陡峭学习曲线,还是很容易工作?它是否适用于触摸屏设备和粗短的手指?我可以调整它以与一个人一起工作吗?

    为什么不尝试另一个问题,但要具体。发布您正在处理的代码并解释它在哪里工作或不工作。多说而不是少说。相信我,你不会泄露任何秘密,无论如何,这里的超级极客之一都不会花费超过 20 秒的时间来解决!

    【讨论】:

    • 我知道我想要什么,但我在解释它时遇到了一些问题。当我有更具体的问题要问时,我会开始问一个新问题。
    猜你喜欢
    • 2012-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-25
    • 2021-09-05
    • 1970-01-01
    相关资源
    最近更新 更多