程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 如何使用php封裝類實現圖片上傳可直接引用

如何使用php封裝類實現圖片上傳可直接引用

編輯:關於PHP編程

     <?php

    class image {
    
        /**
         *完成圖片的上傳
         *
         *@param array $file 待上傳的文件信息的數組,用於5個元素的那個數組
         *@return mixed 如果執行成功,返回上傳了的文件名,否則返回false
         */
        public function upload($file) {
    
            if($file['error'] == 0) {
                $allow_types = array('image/jpeg', 'image/pjpeg', 'image/png', 'image/gif');
                if(in_array($file['type'], $allow_types)) {
                    $maxsize = 2000000;
                    if($file['size'] <= $maxsize) {
                        //上傳
                        //需要將文件重命名,1,防止不規則的字符出現在文件名中,2,防止重名
                        //采用時間戳加隨機數的形式
                        //後綴名如何獲得?在原始文件名中獲得後綴名
                        //在文件名中最後一個點截取到最後就是擴展名
                        //strrchr(在哪個字符串中查,查的字符串);
                        $new_filename = time() . mt_rand(10000, 99999) . strrchr($file['name'], '.');
    
                        //移動
                        //此函數返回移動成功還是失敗
                        if(move_uploaded_file($file['tmp_name'],'images/'. $new_filename)) {
                            return $new_filename;
                        }
                    }
                }
            }
    
            //只有一種情況返回文件名,其他全部返回false
            return false;
        }
    }
    ?>
    
    //-------------------------------------------------------------------------------------
    <?php
    header("content-type:text/html;charset=utf-8");
    function __autoload($image){
            require_once($image.'.class.php');
    }
    
        $image = new image();
        $user = $_POST['user'];
        $img = $_FILES['img'];
        //var_dump($img);
        $img = $image ->upload($img);
        mysql_connect('localhost','root','123');
        mysql_select_db('lyb');
        mysql_query('set names utf8');
        $q = "insert test_image(name,url) values('$user','$img')";
        //var_dump($q);
        $result = mysql_query($q);
                    if($result){
                     
                       echo "添加成功.....<br /><br />";
                     }
                     else{
                       echo "添加失敗。。。";
                     }
    ?>
    
    //--------------------------------------------------------------------------------------
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>圖片上傳類</title>
    </head>
    <body>
    <form enctype="multipart/form-data"  method="post" action="images.php">
    姓名:<input type="text" name="user" id="user"/><br>
    圖片:<input type="file" name="img" id="img"/><br>
    <input type="submit" value="提交"/>
    </form>
    </body>
    </html>
    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved