表单在提交过程中的post数据丢失的情况

我们通常在构造一个表单,更新或新增的时候,action如果指向的是当前这个页面的,那么往往会把这个值置空,如下所示: [html] 当前页面的get信息为:test.php?act=add <form enctype="multipart/form-data" action="" method="post" > <input type="file" name="test" /><input type="submit"><input type="hidden" name="act" value="insert"> </form> [/html] 这个表单中希望提交一个文件到服务器。 本文想要说的一个现象时: 1、服务器允许的上传文件大小比较大,为20M 2、服务器允许的提交时间不限,最起码有1min以上 理论上,这个表单是一定能够提交成功的。并且获得的这个$_REQUEST['act']=='insert' 因为post的值是指定的。 而这里我想说的是,经过1到2分钟的提交之后,程序获取到的$_REQUEST['act']是为add的,也就是说,post数据梨的act值被get替换了。 解决这个问题的办法,是把这个表单的action指定即可。 然后出现这个问题的原因,我还是没有搞懂。先记在这里了。

转载于:https://www.cnblogs.com/bingfengsa/archive/2013/05/14/3269368.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
出现这种情况可能有几种可能性的原因,下面我将从几个可能性进行解析: 1. 数据传输问题:首先,需要确认后端action传输数据到前端的方式是通过什么方式传输的,例如是使用POST方法传输数据还是GET方法传输数据。如果使用的是POST方法,需要确保数据通过form单以正确的方式提交到后端action,如果使用的是GET方法,需要确认数据是通过URL参数的方式传输还是通过请求体的方式传输。如果数据传输有问题,那么在前端页面就无法正确获取到数据。 2. 单元素的name属性问题:在HTML的form,如果要通过name属性来获取单元素的值,需要确保单元素的name属性值与后端action接收数据的参数名一致。如果单元素的name属性值不正确,那么在js无法正确获取到单元素的值。 3. 使用原生JavaScript获取单元素的值:如果使用的是原生JavaScript方法来获取单元素的值,需要注意确保获取元素的方式正确。可以通过document.forms来获取页面单元素,然后再通过元素的name属性来获取具体的单元素的值。 4. 提交方式问题:如果使用的是JavaScript来进行提交,需要确保提交的方式正确。可以通过form.submit()方法进行提交,或者使用AJAX来进行单的异步提交。如果提交方式有误,可能会导致数据在传输过程丢失或无法获取到。 以上是可能导致后端action传过来在form可以取到数据,但在js取不到的一些常见问题和解决方法,希望能对你有所帮助。如果还有其他问题,可以提供更多的相关信息进行进一步的分析和解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值