php结合js实现多文件上传
PHP #多文件上传2014-04-09 11:25
通过js创建节点,然后使用循环实现多文件上传。
一个简单的例子。
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>yige.org</title>
<script language="javascript" type="text/javascript">
function AddInput(){
var input=document.createElement('input');//创建一个input节点
var br=document.createElement('br');//创建一个br节点
input.setAttribute('type','file');//设置input节点type属性为file
input.setAttribute('name','files[]');//设置input节点name属性为files[],以 数组的方式传递给服务器端
document.form1.appendChild(br);//把节点添加到form1表单中
document.form1.appendChild(input);
}
</script>
</head>
<body>
<?php
if($_POST['sub']){
$fileType=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif');//允许上传的文件类型
$num=count($_FILES['files']['name']); //计算上传文件的个数
for($i=0;$i<$num;$i++)
{
if($_FILES['files']['name'][$i]!=''&&is_uploaded_file($_FILES['files']['tmp_name'][$i]))
{
if(in_array($_FILES['files']['type'][$i],$fileType))//判断文件是否是允许的类型
{
$fname='upfile/'.$_FILES['files']['name'][$i];
move_uploaded_file($_FILES['files']['tmp_name'][$i],$fname);
echo '<br/>文件上传成功!';
}else
{
echo '<br/>不允许上传该文件类型';
}
}else
{
echo '<br/>没有上传文件';
}
}
}
?>
<form name="form1" method="post" action="" enctype="multipart/form-data" >
<input type="file" name="files[]" />
<input type="submit" name="sub" value="上传"/>
</form>
<a href="#" onclick="AddInput()">再上传一张</a>
</body>
</html>相关文章
- PHP最全防止sql注入的方法 2014/04/08
- php开发技巧 2014/04/08
- PHP中POSIX正则表达式介绍 2014/04/08
- CodeIgniter框架数据库备份的方法 2014/04/08
- PHP常用函数 2014/04/08
- php判断表单来源的方法 2014/04/08
- php强制http验证的代码 2014/04/08
- PHP提高页面执行效率的方法 2014/04/08
- php中&引用赋值的介绍 2014/04/08
- php获取checkbox复选框的值 2014/04/08