从 HTML 中的复选框值更新 MySql 数据库的建议
Posted
技术标签:
【中文标题】从 HTML 中的复选框值更新 MySql 数据库的建议【英文标题】:Recommendations on Updating MySql database from Checkbox values in a HTML 【发布时间】:2013-04-20 01:15:17 【问题描述】:我有一个table,其中包含从我的 mysql 数据库中检索到的内容。现在,在第 TH 行下方,我有一行可以按列搜索。我已经通过表格展示了一个示例搜索。
此应用程序的用户可能会在进行一些搜索后选中一些复选框(并根据一些满足研究要求的规则)。现在,我想在此表下方有一个提交 [更新记录] 按钮,单击该按钮会更新相应的记录 - 已选中复选框以更新 CheckBox 列的值 - 在这种情况下为“已接受”。
供您参考,我正在使用 struts,因此为此我将编写一个 struts 动作类来处理此问题。我还考虑过 AJAX 在后端异步更新它。我希望人们就执行此操作的最佳实践提出建议。
【问题讨论】:
循环使用表单处理脚本检查的记录并以这种方式更新数据库可能是最简单的方法。 抱歉天真,但我理解前一部分 - 编写一个 JQUERY/JS 脚本来获取所有已选中/选中复选框的记录。在后一个语句中,你的意思是说我应该通过 AJAX 更新数据库?如果您不介意,您能否详细说明后一部分 - 作为一种方式。在此先感谢您,先生。 您需要使用您使用的平台更新数据库。您可以使用 jQuery/JS 获取复选框的值,但要更新数据库,您需要在 struts 中使用更新脚本。可能有一种机制可以在 struts 中读取 json 数据,因此您可以在 json 中编码复选框数据并在 struts 中解码 + 更新数据库。抱歉,我对 struts 不太熟悉! @Tomanow 使用 jQuery/JS,然后 JSON + ajax 来传输数据会工作得很好,但是已经有基本的机制来处理 java-ee 中的表单提交。有关信息,struts 基本上是一个框架,可以处理模型(java bean)/视图(jsp)/控制器(servlet)模式。 您的问题是关于在提交表单时在列表中设置值。它被称为索引属性。您当前可能在 ActionForm 中有一个列表,并且您希望在提交表单时为每一行设置“已接受”属性,然后在 DB 中更新将此属性设置为“true”的行。我错了吗 ?如果不是,请显示 ActionForm 代码和一点 JSP。 【参考方案1】:鉴于您所描述的堆栈,您在服务器上有一个带有 Struts 的 Web 应用程序。当用户选择更新记录时,您可以使用 html 表单发布数据,或使用 Ajax 调用。无论数据如何发送,您都将拥有 Struts 代码来处理信息和更新数据库。唯一的区别在于数据是如何到达那里的。由您决定哪个更有意义。
【讨论】:
以上是关于从 HTML 中的复选框值更新 MySql 数据库的建议的主要内容,如果未能解决你的问题,请参考以下文章
使用 laravel 和 vue js 从 mysql 数据库中检查带有逗号分隔值的复选框