찾다
백엔드 개발PHP 튜토리얼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][&#39;size&#39;]>$this->allow_size){  
                echo "上传文件过大";  
                return false;  
            }  
            return true;  
        }  
        //新的名字  
        public function type(){  
            $type=substr($_FILES[$this->filename][&#39;name&#39;],strrpos($_FILES[$this->filename][&#39;name&#39;],&#39;.&#39;)+1);  
            $name=time().rand(1000,9999).".".$type;  
            return $name;  
        }  
        //放到一个新的文件  
        public function move(){  
            $name=$this->type();  
            if(is_uploaded_file($_FILES[$this->filename][&#39;tmp_name&#39;])){  
                @move_uploaded_file($_FILES[$this->filename][&#39;tmp_name&#39;],$this->images.$name);  
                echo "<script>alert(&#39;添加图片成功&#39;)</script>";  
                return $name;  
            }else{  
                echo "<script>alert(&#39;添加图片失败&#39;)</script>";  
            }  
        }  
        //判断文件上传是否成功  
        public function error(){  
             if($_FILES[$this->filename][&#39;error&#39;]==0){  
                return true;  
            }else if($_FILES[$this->filename][&#39;error&#39;]==1){  
                 echo "文件的大小超过了php.ini中配置文件的大小";  
                 return false;  
             }else if($_FILES[$this->filename][&#39;error&#39;]==2){  
                 echo "文件中的配置大小有问题";  
                 return false;  
             }else if($_FILES[$this->filename][&#39;error&#39;]==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=&#39;fasf &#39; where  id=4;  
        public function update1($table,$arr,$where){  
            $str="";  
            foreach($arr as $k=>$v){  
                if(is_string($v)){  
                    $str=$str.$k.&#39;="$v",&#39;;  
                }else{  
                    $str=$str.$k."=".$v.",";  
                }  
            }  
            $value=rtrim($str,&#39;,&#39;);  
            $sql="update $table set $value where $where";  
            return mysql_query($sql);  
        }  
        //添加一条数据insert into table(name,age) value(&#39;$name&#39;,&#39;$age&#39;);  
        public function insert($table,$arr){  
            $str1=&#39;&#39;;  
            $str2=&#39;&#39;;  
            foreach($arr as $k=>$v){  
                $str1=$str1.$k.",";  
                if(is_string($v)){  
                    $str2=$str2.&#39;"&#39;.$v.&#39;",&#39;;  
                }else{  
                    $str2=$str2.$v.&#39;,&#39;;  
                }  
            }  
            $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 파일 업로드 양식 업로드 생성 .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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
php怎么把负数转为正整数php怎么把负数转为正整数Apr 19, 2022 pm 08:59 PM

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

php怎么实现几秒后执行一个函数php怎么实现几秒后执行一个函数Apr 24, 2022 pm 01:12 PM

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php怎么除以100保留两位小数php怎么除以100保留两位小数Apr 22, 2022 pm 06:23 PM

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php怎么根据年月日判断是一年的第几天php怎么根据年月日判断是一年的第几天Apr 22, 2022 pm 05:02 PM

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有没有下标php字符串有没有下标Apr 24, 2022 am 11:49 AM

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php怎么判断有没有小数点php怎么判断有没有小数点Apr 20, 2022 pm 08:12 PM

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

php怎么替换nbsp空格符php怎么替换nbsp空格符Apr 24, 2022 pm 02:55 PM

方法:1、用“str_replace("&nbsp;","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\&nbsp\;||\xc2\xa0)/","其他字符",$str)”语句。

php怎么读取字符串后几个字符php怎么读取字符串后几个字符Apr 22, 2022 pm 08:31 PM

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경