前端页面
<form action="doAction1.php" method="post" enctype="multipart/form-data">
文件上传<input type="type" name="myFile"></br>
<input type="submit" value="上传">
</form>
下面是upload.func.php封装单文件的函数
<?php
require_once "../lib/string.func.php";
其中string.func.php封装以下函数
function getUniName(){
return md5(uniqid(microtime(true),true);
}
function uploadFile($fileInfo,$allowext=array('jpg','png','gif','wmbp'),$maxsize=512000,$imgFlag=true){
if($fileInfo['error']==UPLOAD_ERR_OK){
$ext=pathinfo($fileInfo['name'],PATHINFO_EXTENSION);
$filename=getUniName().".".$ext;
$destination="uploads/".$filename;
if(is_uploaded_file($fileInfo['tmp_name']){
if(move_uploaded_file($fileInfo['tmp_name'],$destination){
echo "<script>alert('文件移动成功')</script>";
}else
{
echo "<script>alert('文件移动失败');</script>";
}
else{
echo "<script>alert(’文件不是通过HTTP POST方式上传文件的');</script>";
}
}
}else{
switch($fileInfo['error']){
case 1:
echo "文件超过 配置文件的大小";
break;
case 2:
echo 2:"文件超过了表单设置文件的最大的大小";
case 3:
echo "文件部分被上传";
break;
case 4:
echo "文件没有被上传";
break;
case 6:
echo "没有找到临时目录"
break;
case7:
echo "文件不可写";
break;
case 8:
echo "由于php的扩展中断了文件的扩展"
break;
}
}
}
在doAction1.php页面
require_once "upload.func.php";
require_once "../lib/string.func.php";
$fileInfo=$_FILES['myFile'];
$info=uploadFile($fileInfo);
recho $info;
实现文件的上传和确定文件类型。 |
|