2008下php上传文件崩溃,php – 当用户反复尝试上传无效文件类型时,网站崩溃

我试图理解错误……

我有一个允许用户上传CSV的网络应用程序.如果文件类型不是CSV,则不会发生任何操作,页面只显示“无效的文件类型”.

如果用户尝试上载无效的文件类型并反复单击触发处理上载的PHP文件的按钮,则PHP文件最终会无响应,并且网站崩溃时出现以下错误:

"tcp_error: The Web Server may be down, too busy, or experiencing other problems preventing it from responding to requests. You may wish to try again at a later time"

我认为这与它是一个持久的HTTP连接并且它被请求淹没的事实有关吗?

我想知道这个的确切来源以及如果用户反复尝试上传无效文件类型而避免崩溃的最佳修复.

HTML摘录:

function stopUpload(success){

console.log(success);

var csv1 = success['csv1'];

var csv2 = success['csv2'];

var csv3 = success['csv3'];

var csv4 = success['csv4'];

var csvError = success['error'];

var id = success['id'];

$('.js-wf-error').text(csvError);

if (!csvError) {

runWF(id, csv1, csv2, csv3, csv4);

}

}

Run Walking Farm

CSV-upload.php的

(...upload handling...)

?>

window.top.window.stopUpload(<?php print json_encode($returnData); ?>);

解决方法:

尝试给它一个镜头.它可能工作,但不能保证:

通过html表单上传文件时,可能需要几秒钟才能成功上载表单并显示响应页面(PHP).人们可能会感到不耐烦,并多次单击“上传”按钮,这可能导致重复的表单提交或上传.通常它真的是一个问题&你可能希望防止这种情况发生.

您可以使用javascript来处理它:

第一步是为您的提交按钮提供唯一ID,例如id =“myButton”:

第二步(也是最后一步)是给标签提供两个Javascript命令.第一个将告诉浏览器在提交表单后禁用提交按钮,第二个将更改按钮文本以让用户了解正在发生的事情.这是要添加到表单标记的代码:

οnsubmit="document.getElementById('myButton').disabled=true;

document.getElementById('myButton').value='Uploading to server, please wait...';"

您的表单标签看起来像:

οnsubmit="document.getElementById('myButton').disabled=true;

document.getElementById('myButton').value='Uploading to server,please wait...';"

>

而已.这个技巧应该适用于大多数现代浏览器(IE 5,FireFox,Opera,…).

是的,我错过了一些事情,知道它是否属实.

标签:php,tcp,http

来源: https://codeday.me/bug/20190830/1771210.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值