多個文件上傳(php+js可動態增加文件上傳框)
多個文件上傳(php教程+網頁特效可動態增加文件上傳框)
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.bkjia.com1999/xhtml">
<head>
<meta content="text/html; charset=gb2312" http-equiv="content-type" />
<title>多個文件上傳(php+網頁特效可動態增加文件上傳框)</title>
<script language="網頁特效" type="text/網頁特效">
function addinput()//增加input節點
{
var input=document.createelement('input');//創建一個input節點
var br=document.createelement('br');//創建一個br節點
input.setattribute('type','file');// 設置input節點type屬性為file
input.setattribute('name','pic[]');//設置input節點 name屬性為files[],以 數組的方式傳遞給服務器端
document.form1.appendchild(br);//把節點添加到 form1表單中
document.form1.appendchild(input);
}
</script>
</head>
<?php
if($_post['sub'])
{
$ftype=array('image/jpg','image /jpeg','imgage/png','image/pjpeg','image/gif');//允許上傳的文件類型
$files=$_files['files'];
$fnum=count($files['name']); //取得上傳文件個數
for($i=0;$i<$fnum;$i++)
{
if($files['name'][$i]!=''&&is_uploaded_file($files['tmp_name'][$i]))
{
if(in_array($files['type'][$i],$ftype))//判斷文件是否是允許的類型
{
$fname='upfile/'.rand(0,10000).time().substr($files['name'] [$i],strrpos($files['name'][$i],'.'));//自動命名
move_uploaded_file($files['tmp_name'][$i],$fname);
echo '<br/>文件上傳成功!';
}
else
{
echo '<br/>不允許的文件類型!';
}
}
else
{
echo '<br/>該文件不存在!';
}
}
}
?>
<body>
<form name="form1" method="post" action="" enctype="multipart/form-data" >
<input type="file" name="pic[]" />
<input type="submit" name="sub" value="上傳"/>
</form>
<a href="#" onclick="addinput()">再上傳一張</a>
</body>
</html>