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>身份z号:</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如何实现图片上传的封装所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)