每次我为客户创建一个网站时,我都会编写表单HTML,然后编写php脚本来处理该数据。有时形式很长,有时有多种形式 - 它可能会变得混乱。
在我开始尝试编写动态php表单处理程序之前,我真的很喜欢一些最佳实践建议和提示。
我想把所有发布的变量收集到一个数组中来处理它们。但是,我如何知道应该要求哪些值或它们的含义?
也许存在解决这个问题的东西!
非常感谢, 亨利
更多信息,我想到的是一个PHP脚本,它足够灵活,可以使用任何数量的输入为它构建的任何形式。我想我认为它是一个位于服务器上的文件,多个表单将向它发送Ajax请求,然后它就可以满足
答案 0 :(得分:1)
我认为你不应该使用数组,因为$ _POST已经是一个数组了。 但是你的代码中的某种命名约定呢? 例如:
<input type="text" name="txt_username" /> //prefix txt or whatever seems fitting.
然后使用正则表达式查找您期望的数据类型并相应地执行操作。例如,您可以编写一个处理不同类型输入的类,并根据name-property中的前缀将数据传递给正确的函数。
答案 1 :(得分:0)
根据您的表单名称更改您提交按钮的名称。然后在PHP中使用条件语句来确定发布哪个表单并让你的php工作aas你想要的不同形式。
类似这样的事情
<input type="submit" name="signupform"/>
在php中
if(isset($_POST['signupform']))
{
//Do this
}
elseif(isset($_POST['loginform']))
{
//do this
}
已知问题: 您需要保持这些提交名称的唯一性,并且不应该将任何其他元素发布到该php文件中。
您还可以添加隐藏字段
<input type="hidden" name='action' value='signup'/>
然后使用带有$ _POST ['action']键的开关盒。
答案 2 :(得分:0)
我发现通过将它们分配给数组来分离部分是有帮助的,例如
<input type="text" name="Users[username]" id="Users_username" />
这样,我可以通过访问PHP中的数组键轻松选择部分,例如
$_POST['Users']; // returns username from above example