现在的位置: 首页 > 综合 > 正文

PHP图片上传

2013年10月29日 ⁄ 综合 ⁄ 共 3301字 ⁄ 字号 评论关闭

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>

抱歉!评论已关闭.