【问题标题】:Update database without editing previous entries更新数据库而不编辑以前的条目
【发布时间】:2017-08-24 11:45:41
【问题描述】:

每次在输入 1 次后提交表单时,我都会更新 (SQL) 数据库中的数据,例如,现在输入并提交 element_1,将在 20 或 30 分钟后输入并提交 element_2

<form>
    <table>
        <tr>
            <td><input name="element_1" type="text"></td>
            <td><input name="element_2" type="text"></td>
            <td><input name="element_3" type="text"></td>
            <td><input name="element_4" type="text"></td>
            <td><input name="element_5" type="text"></td>
        </tr>
        <tr>
            <td><input name="timeStamp_1" type="text"></td>
            <td><input name="timeStamp_2" type="text"></td>
            <td><input name="timeStamp_3" type="text"></td>
            <td><input name="timeStamp_4" type="text"></td>
            <td><input name="timeStamp_5" type="text"></td>
        </tr>
    </table>
</form>

所有内容提交后我的表单结果应该是这样的

{
    "element": ['a','b','c','d','e'],
    "timeStamp": ['time_1','time_2','time_3','time_4','time_4']
}

我现在的问题在于时间戳,因为我使用 Javascript 使用 Date() 获取它,每次有人提交 element_1 时,都必须使用 timeStamp_1 提交等等。

如何在每次提交时保存时间戳而不用当前时间戳替换之前的时间戳?

【问题讨论】:

  • 请澄清您的问题。你用什么数据库?如何将数据发送到服务器?时间戳真的是'time_X'的形式吗?
  • 它类似于记录的版本控制 - 您希望保留时间戳以便能够更改历史记录。因此,每次编辑记录时都保存新行。希望我理解正确。
  • @slesh 每次有人提交 element_1,timeStamp_1 都必须提交以此类推
  • 然后使用纯js对象映射具有各自时间戳的项目。 var itemTimestampMap = Object.create(null); itemTimestampMap[item1.name] = new Date(); itemTimestampMap[item2.name] = new Date(); ... itemTimestampMap[itemN.name] = new Date();函数提交() { var item = ....; sendPost({ data: item, timestamp: itemTimestampMap[item.name] }) }
  • 我同意,这不是很清楚你需要什么......

标签: javascript jquery sql database


【解决方案1】:

然后使用纯 js 对象映射具有相应时间戳的项目。

var itemTimestampMap = Object.create(null);
itemTimestampMap[item1.name] = new Date();
itemTimestampMap[item2.name] = new Date();
...
itemTimestampMap[itemN.name] = new Date();

function submit() {
   var item = ....;
   sendPost({
      data: item,
      timestamp: itemTimestampMap[item.name]
   })
}

【讨论】:

  • 需要申报所有的itemN吗?
  • 作为一种方式,但您也可以通过 id 映射它们。它是多种多样的,取决于你具体的问题
【解决方案2】:

如果你使用mongodb。Mongodb有更新方法。你可以更新特定的documnet。请检查here

如果是sql sql update here

【讨论】:

    猜你喜欢
    • 2017-12-04
    • 2023-03-18
    • 2017-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-05
    • 1970-01-01
    • 2014-05-18
    相关资源
    最近更新 更多