PHP插入MySQL并记录位置号

PHP insert into MySQL and record position number

目标:记录每个表单项在插入时的位置顺序。

我允许用户动态添加和删除表单字段(该功能与 JS 一起使用)。为简单起见,用户设计他们的表单如下所示:

形式:

副标题

段落

副标题

图片

我的数据库将包含每个字段的 table:

我写了一个简单的函数来从关联数组中获取索引号,我猜我可以将其记录在每个 table 中名为 "position"?

的列中
function arrayValuePosition($value, $array)
{
    return array_search($value, array_keys($array));
}

foreach($array as $key => $value) {
    echo  arrayValuePosition($key, $array);
};

记录此位置编号并循环插入各种 table 的最佳方法是什么?

我认为使用单个 table:

可能更简单
Table: form_data
Fields:
id - INT - PRI auto_increment
fields_enabled - ENUM - possible values: 'subtitle', 'paragraph', 'image'
subtitle
paragraph
image

您可以将记录作为普通行存储在此 table 中,并且有关用户启用的表单字段的信息可以存储在字段 fields_enabled.

浏览现有记录也很容易。