1

我正在尝试做的事情:

我正在尝试构建一个非常简单的可视化布局构建器。这个想法是,用户选择一个块,其中有一些设置,这些设置值存储在隐藏的输入中,当用户保存页面时,我将这些值存储在数据库中。

基本块没问题:

例如,用户选择一个“文本”块,它是这样添加的:

<div>
    <input type="hidden" value="text" name="item_name[]">
    <input type="hidden" value="" name="item_title[]">
    <input type="hidden" value="sdsd" name="item_text[]">
</div>

问题:

但是,有些块的每个字段都有多个值。例如,'gallery' 块,它有多个图像 url、图像标题等。我在寻找合适的方法来组合多个值并提交时遇到了问题。

现在我用 jQuery 将它们添加到一个字符串中,用 __ 分隔。我可以存储数据并将其分离,但问题是如果我想从中删除任何图像,这非常困难,因为我只是将它们添加到字符串中,因此很难找到并删除它。

<div>
text item
<input type="hidden" value="gallery" name="item_name[]">
<input type="hidden" value="__http://img1.jpg__http://img2.jpg" name="img_path[]">
<input type="hidden" value="__img1__img2" name="img_title[]">
<input type="hidden" value="" name="img_desc[]"></input>
</div>

问题:

对于上述块示例,发送多个值的合适方法是什么,请记住会有多个块具有多个输入值?

谢谢。

4

1 回答 1

1
  1. 构建一个包含所有值的Javascript 数组。
  2. 数组转换为 JSON
  3. 提交 JSON 作为隐藏字段的值
  4. 在服务器端,使用 PHP json_decode函数将 JSON 转换为 PHP 对象或数组
于 2013-10-02T20:23:39.530 回答