最好用的AJAX异步上传程序

本文介绍了一个使用PHP实现的TXT文件上传与解析的过程。该过程包括了文件上传验证、临时文件转移、读取文件内容并按行或逗号进行分割处理等功能。此外,还包含了HTML表单和JavaScript交互代码,确保用户界面友好且上传过程顺畅。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP部分=========================================

$time = time();//定义变量,保存图片名,以防图片的名字相同
$suffix = strrchr($_FILES["file"]["name"],".");//获取图片的后缀名
  
if($suffix!='.txt'){echo "只能上传txt格式";}
$upname =$time.$suffix;//上传文件的名称

$upfile = "./up/".$upname;//上传文件的保存位置
$tmp_name=$_FILES["file"]["tmp_name"];//上传文件的临时目录
 
if($_FILES["file"]["error"]>0){
    echo "上传文件有误:".$_FILES["file"]["error"];
   
}else{
    if(file_exists($upfile)){
        echo  "已经存在";
    }else{
        if(move_uploaded_file($tmp_name,$upfile)){//将临时文件转移到制定目录下 
			$fp=fopen($upfile,'r');
			while(!feof($fp)){
				$buffer=fgets($fp,4096);
				$haoma=str_replace("\n",",",str_replace("\r\n",",",$buffer));
				$arr_haoma=array();
				$arr_haoma=explode(",",$haoma);
				for($i=0;$i<count($arr_haoma);$i++){
					
				}
			}
			fclose($fp);
           // echo  $fp;//上传成功
           
        }else{
            echo "上传失败";//上传失败
           
        }
         
    }
}

HTML部分====================================================

<form method="post" action="" enctype="multipart/form-data" name="theForm" onsubmit="return addbooks();">
<div class="uptxt f">
	<dl><dt> </dt><dd>每行一个号码,或者用","符号隔开</dd></dl>
	<dl><dt> </dt><dd>最大上传<span class=fls>3000KB</span>,最多上传<span class=fls>200,000</span>个号码</dd></dl>
	<dl><dt> </dt><dd><input type="file" id='file' name='file' class=inputk style="width:190px;*width:200px;"></dd></dl>
	<dl><dt> </dt><dd><input type="hidden" name="mid" id=mid value=""> <input type="submit" name=submit value="提交" class=input0></dd></dl>
</div><div class=clear></div><div class=gap></div><div class=gap></div>
</form>

JS部分=======================================================

<script>
function addbooks(){
	var mid=$("#mid").val();
	//$.weeboxs.open(WorkLoad, {title:WorkTips,showClose:false,showButton:false,boxid:'adddao'});
		var s = 0;
		$.weeboxs.open(WorkLoad + "用时:<span id='runtime'>" + s + "</span>秒", {
			title: WorkTips,
			showClose: false,
			showButton: false,
			boxid: 'loadtip'
		});
		var wait = setInterval(function() {
			s++;
			$("#runtime").html(s);
		},1000);
		$.ajaxFileUpload({
				url:'/js/ups.php',
	   			cache: false,
				secureuri:false,
				fileElementId:'file',
				dataType: 'data',
				type: "POST",
				data:"mid="+mid,
				success: function (msg){
					//alert(msg);
					clearInterval(wait);
					if(msg==1){
						sms('sms','sms_phone_list','phone_list',0);
						$.weeboxs.close();
						$.weeboxs.close();
					}else{
						alert(msg);
						$.weeboxs.close();
						$.weeboxs.close();
					}
					//if(m.msg=='no'){
//						$.weeboxs.open(WorkError+"没有选择文件!", {title:WorkTips,showButton:false,boxid:'adddao'});
//					}else if(m.msg=='hit'){
//						$.weeboxs.open(WorkError+"上传号码超过限制!", {title:WorkTips,showButton:false,boxid:'adddao'});
//					}else if(m.msg=='size'){
//						$.weeboxs.open(WorkError+"上传文件大小超过限制!", {title:WorkTips,showButton:false,boxid:'adddao'});
//					}else if(m.msg=='error'){
//						$.weeboxs.open(WorkError+"只能上传txt格式!", {title:WorkTips,showButton:false,boxid:'adddao'});
//				  }else{
//				  	sms('sms','sms_phone_list','phone_list',0);
//						$.weeboxs.close();
//						$.weeboxs.close();
//					}
					
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {

				clearInterval(wait);
				$.weeboxs.close();
				
			$.weeboxs.open(WorkError + XMLHttpRequest, {
				title: WorkTips,
				showCancel: false,
				boxid: 'tip'
			});

		}

			});
	return false;
}
</script>

最后记得引用JS

<script src='/m/js/ajaxfileupload.js' type=text/javascript></script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值