【发布时间】:2010-08-24 09:25:29
【问题描述】:
我有一个多步骤表格,要求订阅者在继续续订过程之前检查他们的详细信息。
我要做的是检查表单是否已根据其预填充值(从 Web 服务中提取)进行了修改,然后将其写入我自己的本地 MySQL 数据库。仅当值已从原始值修改时才会发生这种情况。
我知道我可以通过使用 == 运算符来做到这一点,但我想知道是否有更有效的方法来做到这一点?
【问题讨论】:
我有一个多步骤表格,要求订阅者在继续续订过程之前检查他们的详细信息。
我要做的是检查表单是否已根据其预填充值(从 Web 服务中提取)进行了修改,然后将其写入我自己的本地 MySQL 数据库。仅当值已从原始值修改时才会发生这种情况。
我知道我可以通过使用 == 运算符来做到这一点,但我想知道是否有更有效的方法来做到这一点?
【问题讨论】:
您可以使用(多维)数组来做到这一点。仔细命名表单/服务变量,然后在提交时将它们与array_diff 进行比较,array_diff 会告诉您哪些值已被修改。
因为你说这是一个多步骤的表单,当然你也可以在$_SESSION变量中收集之前提交的值。
【讨论】:
您可以在客户端使用 javascript 执行此操作:
HTML
<input type="text" id="username">
Javascript
var input = $('#username');
if (input.defaultValue != input.value) {
//Do stuff if different
} else {
//Do stuff if equal
}
【讨论】: