摘要:
问题 一个表单元素允许用户选择多个选项,如下拉菜单或一组复选框,不过PHP只能看到其中一个提交值。 解决方案 表单元素名末尾加一对中括号([])。 命名一组复选框 <input type="checkbox"name="boroughs[]" value="bronx"> The Bronx Bro 阅读全文
摘要:
问题 你在使用一个老版本的PHP,希望访问表单输入变量,但不允许恶意用户在你的程序中设置任意的全局变量。 解决方案 最容易的解决方案是使用PHP5.4.0或以后版本。从这个版本开始,去除了register_globals配置指令,正是这个配置指令导致了全局变量注入问题。 如果使用较早版本的PHP,可 阅读全文
摘要:
问题 希望防止用户将同一个表单提交多次。 解决方案 在表单中包含一个隐藏域,并指定一个唯一的值。验证表单时,查看提交的表单是否已经有这个值。 如果有,则拒绝提交。如果还没有,则处理表单,并记录这个值以备以后使用。 另外,可以使用JavaScript,使得一旦表单提交就禁用表单Submit(提交)按钮 阅读全文
摘要:
问题 表单中输入的数据有问题时,希望在有问题的输入域旁边输出错误消息,而不是在表单最上面显示一个通用的错误消息。还希望保留用户在表单中输入的值,使他们不用再重新输入。 解决方案 验证时,将表单错误记录到一个数组中,以元素名为键。然后当显示表单时,在各个元素旁边输出适当的错误消息。为了保留用户输入,可 阅读全文