1.html前段页面(upfile.html)
下面代码如果有错,评论中提出,谢谢!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<form name='myform' action="up_file.php" enctype="multipart/form-data" method="POST"><!--指定为上传文件--!>
<div align="center">
<input type="file" name="myimg" />
<input type="submit" value="确定" />
</div>
</form>
</body>
</html>
2.后台处理页面 (upfile_Adm.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.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<?php
$name=$_FILES["myimg"]["name"]; //获取上传文件名称
$tmp_name=$_FILES["myimg"]["tmp_name"]; //服务器临时文件
$error=$_FILES["myimg"]["error"];//上传时返回错误0,1,2,3,4
$extName=strtolower(array_pop(explode('.',$name)));//截取文件后缀名,并转换为小写
$strArray=array('jpg','jpeg','gif','png');//判断文件格式
if(!in_array($extName,$strArray)){
exit('文件格式不正确!');
}
//生成随机字符串
function randStr(){
$str=range(a,z);//定义26个小写字母为一个数组
$strs=range(0,9);
$a=range(1,9);
$str=array_merge($str,$strs);//合并数组$str,$strs为一个数组
shuffle($a);//打乱数组$a原始排序
for ($i=1;$i<=$a[0];$i++){
shuffle($str);//打乱数组 $str
}
shuffle($a);
for($i=1;$i<=$a[0];$i++){
shuffle($strs);
}
$randStr=time().'_';
for($i=0;$i<10;$i++){
$randStr.=$str[$i];
}
$randStr.='_';//定义字符串
for($i=0;$i<5;$i++){
$randStr.=$strs[$i];
}
return $randStr;//返回随机字符串
}
if(is_uploaded_file($tmp_name)){ //是否是通过POST上传的文件
$path="upfiles/".date("YmdHis").randStr().".".strtolower($extName); //服务器图片路径
if(move_uploaded_file($tmp_name,$path)){//上传是否成功
switch ($extName){
case 'jpeg':
$img=@imagecreatefromjpeg($path);//创建图片
if(!$img){//是否可以创建图片
unlink($path);//图片文件已损坏,删除已上传文件
exit('文件內容出錯!');
}
echo '添加成功!';
break;
case 'jpg':
$img=@imagecreatefromjpeg($fpath);
if(!$img){
unlink($path);
exit('文件內容出錯!');
}
echo '添加成功!';
break;
case 'gif':
$img=@imagecteatefromgif($path);
if(!$img){
unlink($path);
exit('文件內容出錯!');
}
echo '添加成功!';
break;
case 'png':
$img=@imagecteatefrompng($path);
if(!$img){
unlink($path);
exit('文件內容出錯!');
}
echo '添加成功!';
break;
}
}
else{
echo "Error!";
}
}else {
exit('系統出錯!');
}
?>
</body>
</html>