PHP多name值多文件上传

本文展示了如何使用PHP和前端Bootstrap框架实现多文件上传功能。前端通过JavaScript动态添加文件输入框,后端PHP通过遍历$_FILES数组处理多个文件,将上传的文件移动到指定路径,并将文件路径存储到数据库中。主要涉及的技术点包括前端交互、文件上传处理及数据库操作。
摘要由CSDN通过智能技术生成

PHP多name值多文件上传

前端使用的时bootstrap框架
后端使用php

前端页面效果展示

在这里插入图片描述

前端代码

<div class="form-group row col-md-12" style="border-bottom: 2px solid #eee;" id="allonm">
	<label  class="col-sm-6 col-form-label">附录1</label>
	<div class="input-group col-sm-6">
		<div class="col-sm-6">
			 <label for="objects_num_money">
	        	<span id="onmtext"></span> 
				<input type="file" id="objects_num_money" name="objects_num_money[]">
			</label> 
		</div>
		<div class="col-sm-6">
			<div style="" class="btn btn-primary" onclick="addonm()">
				<a style="color: #fff;text-decoration:none;">添加</a>
			</div>
		</div>
	</div>
</div>
<div class="form-group row col-md-12" style="border-bottom: 2px solid #eee;" id="allonm">
	<label  class="col-sm-6 col-form-label">附录2</label>
	<div class="input-group col-sm-6">
		<div class="col-sm-6">
			 <label for="org_city">
	        	<span id="octext"></span> 
				<input type="file" id="org_city" name="org_city[]">
			</label> 
		</div>
		<div class="col-sm-6">
			<div style="" class="btn btn-primary" onclick="addoc()">
				<a style="color: #fff;text-decoration:none;">添加</a>
			</div>
		</div>
	</div>
</div>

js代码

function addonm(){
		var str = ' <div class="col-sm-6"></div><div class="input-group col-sm-6"><div class="col-sm-6"><input type="file"  name="objects_num_money[]" style=""></div><div class="col-sm-6"><div style="" class="btn btn-primary" οnclick="deladd(this)"><a style="color: #fff;text-decoration:none;">删除</a></div></div> '
		$('#allonm').append(str)
	}
	function addco(){
		var str = ' <div class="col-sm-6"></div><div class="input-group col-sm-6"><div class="col-sm-6"><input type="file"  name="city_org[]" style=""></div><div class="col-sm-6"><div style="" class="btn btn-primary" οnclick="deladd(this)"><a style="color: #fff;text-decoration:none;">删除</a></div></div> '
		$('#allco').append(str)
	}

php代码

function test(){
	   $data = $_FILES;
	  
	   for ($i=0,$len=count($data['objects_num_money']['name']);$i<$len;$i++){
	    //遍历循环获取单个文件
		    $file=array(
		      	'name'=>$data['objects_num_money']['name'][$i],
		    	'type'=>$data['objects_num_money']['type'][$i],
		        'tmp_name'=>$data['objects_num_money']['tmp_name'][$i],
		        'error'=>$data['objects_num_money']['error'][$i],
		        'size'=>$data['objects_num_money']['size'][$i]
		    );
		    if ($file["error"] == 0) {
		    //单个文件移动
				  $imgname =$path.'/附件1-'.$file['name'];
			     $bol = move_uploaded_file($file["tmp_name"], $imgname);
			     //数组追加
			     array_push($onm, $imgname);
			}
		}
		//附录一的字符串文件储存路径
		$onm = implode(',', $onm);
		$co = array();
		for ($i=0,$len=count($data['city_org']['name']);$i<$len;$i++){
		    $file=array(
		      	'name'=>$data['city_org']['name'][$i],
		    	'type'=>$data['city_org']['type'][$i],
		        'tmp_name'=>$data['city_org']['tmp_name'][$i],
		        'error'=>$data['city_org']['error'][$i],
		        'size'=>$data['city_org']['size'][$i]
		    );
		    if ($file["error"] == 0) {
				 $imgname =$path.'/附件2-'.$file['name'];
			     $bol = move_uploaded_file($file["tmp_name"], $imgname);
			     array_push($co, $imgname);
			}
		}
		//附录二的字符串文件储存路径
		$co = implode(',', $co);
		$model = new test();
		//最后传到数据库
		$model->objects_num_money = $onm;
    	$model->city_org = $co;
    	$model->save();
  }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值