php如何实现图片上传的封装

 2866

php实现图片上传封装


php如何实现图片上传的封装


1、先封装图片上传类 file.class.php

<?php  
class File{  
    public $images;  
    public $filename;  
    public $allow_size;  
    public function __construct($images,$filename,$allow_size){  
        $this->images=$images;  
        $this->filename=$filename;  
        $this->allow_size=$allow_size;  
    }  
    //文件大小  
    public function allow_size(){  
        if($_FILES[$this->filename]['size']>$this->allow_size){  
            echo "上传文件过大";  
            return false;  
        }  
        return true;  
    }  
    //新的名字  
    public function type(){  
        $type=substr($_FILES[$this->filename]['name'],strrpos($_FILES[$this->filename]['name'],'.')+1);  
        $name=time().rand(1000,9999).".".$type;  
        return $name;  
    }  
    //放到一个新的文件  
    public function move(){  
        $name=$this->type();  
        if(is_uploaded_file($_FILES[$this->filename]['tmp_name'])){  
            @move_uploaded_file($_FILES[$this->filename]['tmp_name'],$this->images.$name);  
            echo "<script>alert('添加图片成功')</script>";  
            return $name;  
        }else{  
            echo "<script>alert('添加图片失败')</script>";  
        }  
    }  
    //判断文件上传是否成功  
    public function error(){  
        if($_FILES[$this->filename]['error']==0){  
            return true;  
        } else if($_FILES[$this->filename]['error']==1){  
            echo "文件的大小超过了php.ini中配置文件的大小";  
            return false;  
        } else if($_FILES[$this->filename]['error']==2){  
            echo "文件中的配置大小有问题";  
            return false;  
        } else if($_FILES[$this->filename]['error']==3){  
            echo "找不到文件的位置"; 
            return false;  
        }  
    }  
}

2、封装数据库类 mysql.class.php

<?php  
class Mysql{  
    public $db_link;  
    public $db_address;  
    public $db_user;  
    public $db_pwd;  
    public $db_name;  
    //public function __construct(IP地址, 用户名, 密码, 数据库)  
    public function __construct($address,$user,$pwd,$name){  
        $this->db_address=$address;  
        $this->db_user=$user;  
        $this->db_pwd=$pwd;  
        $this->db_name=$name;  
        $this->connect();  
    }  
    //连接数据库  
    public function connect(){  
        $this->db_link=mysql_connect($this->db_address,$this->db_user,$this->db_pwd);  
        mysql_select_db($this->db_name);  
        mysql_query("set names utf8");  
    }  
    //进行 增删改  
    public function dml($sql){  
        $res=mysql_query($sql);  
        if(!$res){  
            echo"sql语句错误";  
        }else{  
            return $res;  
        }  
    }  
    //进行多条数据的查询  
    public function select_all($sql){  
        $res=mysql_query($sql);  
        if(is_resource($res) && mysql_affected_rows()>0){  
            $arr=array(); 
            while($w=mysql_fetch_assoc($res)){  
                $arr[]=$w;  
            }  
            return $arr;  
        }else{  
            return false;  
        }  
    }  
    //进行单行数据进行查询  
    public function select_one($sql){  
        $res=mysql_query($sql);  
        if(is_resource($res) && mysql_affected_rows()>0){  
            return mysql_fetch_assoc($res);  
        }else{  
            return false;  
        }  
    }  
    //将数据中的某一条数据进行删除  @parme : 表名  条件  
    public function delete($table,$where){  
        //$str=mysql_query($sql);  
        $str="delete from $table where $where";  
        return mysql_query($str);  
    }  
    //update table set name='fasf ' where  id=4;  
    public function update1($table,$arr,$where){  
        $str="";  
        foreach($arr as $k=>$v){  
            if(is_string($v)){  
                $str=$str.$k.'="$v",';  
            }else{  
                $str=$str.$k."=".$v.",";  
            }  
        }  
        $value=rtrim($str,',');  
        $sql="update $table set $value where $where";  
        return mysql_query($sql); 
    }  
    //添加一条数据insert into table(name,age) value('$name','$age');  
    public function insert($table,$arr){  
        $str1=''; 
        $str2='';  
        foreach($arr as $k=>$v){  
            $str1=$str1.$k.",";  
            if(is_string($v)){  
                $str2=$str2.'"'.$v.'",';  
            }else{  
                $str2=$str2.$v.',';  
            }  
        }  
        $key=substr($str1,0,strlen($str1)-1);  
        $value=substr($str2,0,strlen($str2)-1);  
        $sql="insert into $table($key) value($value)";  
        mysql_query($sql);  
        return mysql_insert_id();  
    }  
    public function counts($sql){  
        mysql_query($sql); 
        return mysql_affected_rows();  
    }  
}  
?>

3、创建文件上传表单upload.php

<form action="uploading_insert.php" method="post" enctype="multipart/form-data">  
    <meta charset="utf-8"/>  
    <fieldset>  
        <legend>用户上传信息</legend>  
        <p>  
            <label>姓名:</label>  
            <input type="text" name="username">  
        </p>  
        <p>  
            <label>密码:</label>  
            <input type="text" name="pwd">  
        </p>  
        <p>  
            <label>身份证号:</label>  
            <input type="text" name="card1">  
        </p>  
        <p>  
            <label>上传图像:</label>  
            <input type="file" name="filename"><input type="hidden" name="MAX_FILES_SIZE" value="1000000">  
        </p>  
        <p>  
            <input type="submit" value="上传">  
        </p>  
    </fieldset>  
</form>

以上就是php如何实现图片上传的封装的详细内容。





TAG标签:
本文网址:https://www.zztuku.com/detail-7807.html
站长图库 - php如何实现图片上传的封装
申明:如有侵犯,请 联系我们 删除。

评论(0)条

您还没有登录,请 登录 后发表评论!

提示:请勿发布广告垃圾评论,否则封号处理!!

    编辑推荐