gpt4 book ai didi

javascript - 如何将 javascript 变量写入 sql 数据库?

转载 作者:行者123 更新时间:2023-11-29 00:41:04 27 4
gpt4 key购买 nike

我有一个表单,可以将用户定义的姓名和电子邮件地址写入 mysql 数据库。我遇到问题的部分是我有表单的次要部分,它为复选框分配值,然后给你总和,它被定义为“总计”。我想将这个总数写入同一个数据库。我是 JS 编码的新手,我不太确定在用户确定值后如何传递 total。

<form name="form1">
<input type="checkbox" name="check[]" data-weight="5" /> 5<br />
<input type="checkbox" name="check[]" data-weight="10" /> 10<br />
<input type="checkbox" name="check[]" data-weight="30" /> 30<br />
<div>Total: <span id="total">0</span></div>
</form>

<script type="text/javascript">
(function () {
var totalEl = document.getElementById('total');
var total = 0;
var checkboxes = document.form1['check[]'];

var handleClick = function () {
total += parseInt(this.getAttribute('data-weight'), 10) * (this.checked ? 1 : -1);
totalEl.innerHTML = total;
};

var l = checkboxes.length;
for (i = 0; i < l; ++i) {
checkboxes[i].onclick = handleClick;
}
}());
</script>

最佳答案

首先: 如果禁用 Javascript,它应该工作吗?或者提交表单但可能错误/没有值写入数据库是否可以接受?

如果没关系

你从没有启用 Javascript 的用户那里得到你的数据库,然后你可以使用 AvL's suggestion .

但是如果你想要正确的值

那么您应该确保您没有依赖 Javascript 支持。您应该确保您的表单始终提供一致的值,即使它是在没有使用 Javascript 进行计算的情况下提交的。

在这种情况下,您应该在服务器端而不是客户端进行计算。当然,您可以在客户端进行计算,但问题是您只对客户端用户界面进行客户端数学运算(不针对最终数据)。

我不知道您的服务器端处理,因此我不建议任何用于服务器端计算和/或将值保存到数据库的代码。因此,我唯一的建议是您应该在服务器端处理您的 check[] 位数组。

如果你愿意,你可以更好地描述你的服务器/数据库/处理,并留下关于你的更改的注释作为对我的回答的评论。

更新:这基本上是关于 pst commented 的更长的解释对你的问题。

关于javascript - 如何将 javascript 变量写入 sql 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12250493/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com