您的位置 首页 php

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

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

文章来源:智云一二三科技

文章标题:php如何实现图片上传的封装

文章地址:https://www.zhihuclub.com/6059.shtml

关于作者: 智云科技

热门文章

网站地图