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

互联网 20-6-2

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教程》

以上就是php如何实现图片上传的封装的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: PHP
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:【设计模式】PHP单例模式的应用场景和实现

相关资讯