首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么使用PHP的表单缺少一些$_POST变量?

为什么使用PHP的表单缺少一些$_POST变量?
EN

Stack Overflow用户
提问于 2010-04-21 18:46:59
回答 6查看 1.8K关注 0票数 0

有时,实际上,我的web应用程序的用户每天提交一份表单,其中大约有十几个表单字段,其中一半是隐藏字段,一半的$_POST数据根本不存在于处理脚本中。请注意,不存在的字段位于表单的最底部。我之所以知道这是因为这会引发一个致命的错误,并且会向我发送一封电子邮件,其中包括post数据。

当然,我和我的团队中的任何一个开发人员都无法重现这个问题。

Flash参与了这个过程,因为我正在使用一个名为Uploadify的库来显示进度表。这里是flow...does,任何人都有任何想法,为什么有些帖子数据会被删除?

  • 用户访问我正在使用的CMS中的页面的编辑屏幕。将页面的
  • 记录id作为隐藏值放入表单。
  • 用户单击Uploadify浏览按钮并选择一个文件(只允许单个文件选择)。
  • 用户单击“为我的表单提交”按钮。
  • jQuery拦截表单提交操作,触发Uploadify开始上载。并为提交操作返回false (手动取消表单提交事件,以便Uploadify可以将over).
  • Uploadify上载到自定义进程,script.
  • Uploadify完成上载并触发Javascript finishes callback.
  • The Javascript回调调用$('#myForm').submit()提交表单。

这种情况发生在多个浏览器(Firefox 3.5、3.6、Safari、Internet 7、8)和多个平台(MacOS10.5、10.6和Windows,7)上。

EN

回答 6

Stack Overflow用户

发布于 2010-04-21 19:27:18

文件上传(Uploadify)的目标是否与<form>相同?如果是这样,除非在scriptData配置选项中显式指定Uploadify,否则Uploadify不会随文件上载一起发送任何信息(即其他表单字段)。可能这些错误是由这些上传到页面造成的,这会导致请求缺少特定的字段。

票数 1
EN

Stack Overflow用户

发布于 2010-04-21 19:33:21

您对数据进行了javascript处理吗?如果是这样的话,一些用户可能没有启用js,并可能导致问题。尝试在禁用javascript的情况下运行表单。

编辑:帮助阅读整个帖子。是的,很可能人们在没有启用javascript的情况下运行表单。

票数 1
EN

Stack Overflow用户

发布于 2010-04-21 22:16:55

我的第一个想法是无效的html。你说最后是隐藏的田野。也许嵌入其中的一些数据没有做好适当的准备或转义。

由于您确实获得了一些数据,我可能会开始使用jquery来创建它所知道的表单元素和值的某种类型的校验和,并将此聚合校验和与表单post一起发送。取决于你是否有困难,让它工作可能是非常揭示你的问题。

您还可以尝试查找浏览器发送的http请求的内容长度。可能会更改webserver日志配置。它可能正在发送数据,而服务器/脚本正在错误地处理这些数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2685674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档