app 圖片的上傳

 public function index(){
        $ub_id = input("ub_id");
        $index = input("index");
        $uo_long = input("uo_long");
        $uo_lat = input("uo_lat");
        $uo_high = input("uo_high");
        //先判斷用戶是否在線
        $current = time();
        if(!$this->CheckSession($ub_id,$uo_long,$uo_lat,$uo_high,$current)){
            // 用戶不在線
            $this->data['result']['sid'] = md5($ub_id);
            $this->data['result']['index'] = $index;
            return $this->ErrorMsg("01","用戶已下線");
        }else{

            //用戶在線
            $file = request()->file("image");
            //文件的保存路徑
            $path_dir = ROOT_PATH.'public'.DS.'upload';
            //文件的上傳時間
            $current = time();
            $slashTime = date("Y/m/d",$current);
            $bareTime = date("Ymd",$current);
            $outlineTime = date("Y_m_d",$current);
            $createTime = date("Y-m-d H:i:s",$current);
            if(empty($ub_id)){
                $ub_id = 0;
                //非用戶的文件上傳
                $path = $path_dir.DS.'pub';
                foreach($file as $val){
                    $info = $val->move($path);
                    if($info) {
                        //添加操作日誌
                        $inf = "文件上傳成功";
                        $this->Online($ub_id,$uo_long,$uo_lat,$uo_high,$inf,$current);

                        //得到文件的保存路徑
                        $savePath = $info->getPath();
                        //得到文件的後綴
                        $extension = $info->getExtension();
                        //得到保存文件的名字
                        $name = $info->getFilename();
                        //得到文件的大小
                        $size = $info->getSize();
                        //上傳文件的id

                        $fileId = $ub_id."_".$outlineTime.'_'.md5($ub_id.$bareTime.$name);
                        //保存的文件的名字
                        $fileName = str_replace('/', '\\', $savePath .DS .md5($ub_id.$bareTime.$name) . '.' . $extension);
                        //保存文件的信息
                        $fileInfo = str_replace("/", '\\', $savePath .DS .md5($ub_id.$bareTime.$name) . '.' . "inf");
                        //備註
                        $demo = $ub_id;
                        $file_ids['fileid'] = $fileId;
                        $file_ids['filename'] = $fileName;
                        $res = fopen($fileInfo, 'a+');
                        fwrite($res, $createTime);
                        fwrite($res, "\n");
                        fwrite($res, $fileName);
                        fwrite($res, "\n");
                        fwrite($res, $fileId);
                        fwrite($res, "\n");
                        fwrite($res, $size);
                        fwrite($res, "\n");
                        fwrite($res, $demo);
                        $url = "http://hb.lchtime.com/upload/pub/".str_replace("_","/",str_replace("0","",$fileId)).".".$extension;
                        //返回信息
                        $this->data['file_ids'][] = $file_ids;
                        $this->data['url'] = $url;
                        return $this->Sucess("10","文件上傳成功!");
                    }else{
                        //添加操作日誌
                        $info = "文件上傳失敗";
                        $this->Online($ub_id,$uo_long,$uo_lat,$uo_high,$info,$current);

                        //返回信息
                        return $this->ErrorMsg("02","文件上傳失敗!");
                    }
                }
            }else{
                //用戶上傳文件路徑
                $path =  $path_dir.DS.$ub_id;
                foreach($file as $val){
                    $info = $val->move($path,true,false);
                    if($info){
                        //添加操作日誌
                        $inf = "文件上傳成功";
                        $this->Online($ub_id,$uo_long,$uo_lat,$uo_high,$inf,$current);

                        //得到文件的保存路徑
                        $savePath = $info->getPath();
                        //得到文件的後綴
                        $extension = $info->getExtension();
                        //得到保存文件的名字
                        $name = $info->getFilename();
                        //得到文件的大小
                        $size = $info->getSize();
                        //上傳文件的id
                        $fileId = $ub_id."_".$outlineTime.'_'.str_replace(".$extension","",$name);
                      //保存的文件的名字
                        $fileName = str_replace('/', '\\', $savePath .DS .$name);
                        //保存文件的信息
                        $fileInfo = str_replace("$extension", "inf", $fileName);
                        //備註
                        $demo = $ub_id;
                        $file_ids['fileid'] = $fileId;
                        $file_ids['filename'] = $fileName;
                        $res = fopen($fileInfo, 'a+');
                        fwrite($res, $createTime);
                        fwrite($res, "\n");
                        fwrite($res, $fileName);
                        fwrite($res, "\n");
                        fwrite($res, $fileId);
                        fwrite($res, "\n");
                        fwrite($res, $size);
                        fwrite($res, "\n");
                        fwrite($res, $demo);
                        $userDetail = new UserDetail;
                        $userDetail->where('ud_ub_id',$ub_id)->update(["ud_photo_fileid"=>$fileId]);
                        $url = "http://hb.lchtime.com/upload/".str_replace("_","/",$fileId).".".$extension;
                        ///返回信息
                        $this->data['result']['sid'] =md5($ub_id);
                        $this->data['result']['index'] = $index;
                        $this->data['file_ids'][] = $file_ids;
                        $this->data['url'] = $url;
                        return $this->Sucess("10","文件上傳成功!");

                    }else{
                        //添加操作日誌
                        $info = "文件上傳失敗";
                        $this->Online($ub_id,$uo_long,$uo_lat,$uo_high,$info,$current);

                        //返回信息
                        $this->data['result']['sid'] = md5($ub_id);
                        $this->data['result']['index'] = $index;
                        return $this->ErrorMsg("02","文件上傳失敗!");
                    }

                }

            }
        }

    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章