使用隐藏字段将表单字段标签传递给php很好吗?

时间:2018-06-28 14:39:54

标签: php html forms

我正在尝试一种确定的方法,以使用来自Web表单的数据输入来构建电子邮件,而不必将每个字段名称都映射到其相关标签。我在这里尝试更好地解释:

<label for="project">Project name</label>
<input name="project" id="project" type="text"  value="" />

当我收到$_POST数据时,我将不得不手动执行以下操作:

$msg .= 'Project name:' . $_POST['project']

因此,如果我有30个字段,则必须手写所有30个标签才能构建最终的邮件。因此,我认为也许可以利用隐藏字段来传递标签,例如:

<label for="project">Project name</label>
<input name="project[]" id="project" type="text"  value="" />
<input name="project[label]" type="hidden" value="Project name">

所以我可以做这样的事情:

$msg .= $_POST['project'][0] . ': ' . $_POST['project_name']['label']

就可以了。但是问题是:这是一种好习惯吗?

2 个答案:

答案 0 :(得分:1)

不,这不是一个好习惯。

如果要使其自动化,请在PHP中构建Customer Id数组并对其进行循环:

key => label

答案 1 :(得分:1)

安全性:
如前所述,这不是您的问题中所示的好习惯,您需要检查您的标签,因为任何人都可以修改您的字段并可能破坏邮件的正文您的邮件。

耗时:
您可能想这样做是为了节省时间,但是以安全的方式进行此操作需要更多的数据验证,并且您将结束编写更多的代码(并多次写入标签内容)。