上传照片

//上传照片function action_upload(){

    //获取上传文件的文件信息    $photoname = $_FILES[‘photo‘][‘name‘];    $type = $_FILES[‘photo‘][‘type‘];    $tmp_name = $_FILES[‘photo‘][‘tmp_name‘];    $size = $_FILES[‘photo‘][‘size‘];    $error = $_FILES[‘photo‘][‘error‘];    $maxSize = 20971520;    $allowExt = array(‘gif‘, ‘jpg‘, ‘jpeg‘, ‘png‘,‘image/jpeg‘);    $destination ="static/upload/historyalbum/photo/".$photoname;

    //设置临时存放位置    //move_uploaded_file($tmp_name,$destination);

    if($error==0){        //判断照片大小        if($size>$maxSize){            exit(‘上传照片太大!:(‘);        }

        if(!in_array($type,$allowExt)){            exit(‘照片类型不对!:(‘);        }        //判断文件上传方式是否通过HTTP POST上传        if(!is_uploaded_file($tmp_name)){            exit(‘照片不是通过HTTP POST上传!:(‘);        }

        //检测是否是真实的图片类型        if(getimagesize($tmp_name) ==false){            exit(‘照片非法!请选择正确的照片。:(‘);        }

        //$photo_path = $destination;//文件目录为临时文件目录        /*                    if(!file_exists($photo_path)){                        mkdir($photo_path,0777,true);                        chmod($photo_path,0777);                    }*/

        //确保文件名唯一,防止产生覆盖上传成功        // $uniName = mad5(uniqid(microtime(true),true)).‘.‘.$tmp_name;        if(@move_uploaded_file($tmp_name,$destination)){            //echo ‘照片上传成功!:)‘;

            $photo = new Schoolhistoryphoto();            $post[‘user_id‘] = $_SESSION[‘id‘];            $post[‘ablum_id‘]=$_POST[‘type‘];            $post[‘name‘] = $_POST[‘name‘];            $post[‘description‘] = $_POST[‘description‘];            $post[‘photo_path‘] = ‘/‘.$destination;            $post[‘create_at‘] = date(‘Y-m-d H:i:s‘,time());            $photo->fromArray($post);            $photo->save();

            $this->request->redirect(‘schoolhistory/historyalbum‘);        }else{            //echo ‘照片上传失败!:(‘;            $this->request->redirect(‘schoolhistory/historyalbum‘);        }

    }else{        //匹配错误信息        switch($error){            case 1:                echo ‘上传照片超过了PHP配置文件中upload_max_filesize选项的值:(‘;                break;            case 2:                echo ‘超过了表单MAX_FILE_SIZE限制的大小:(‘;                break;            case 3:                echo ‘照片部分被上传:(‘;                break;            case 4:                echo ‘没有选择照片文件:(‘;                break;            case 6:                echo ‘没有找到临时目录:(‘;                break;            case 7:                echo ‘未知错误:(‘;                break;            case 8:                echo ‘系统错误:(‘;                break;        }    }

}
时间: 2024-10-12 02:38:34

上传照片的相关文章

Iphone H5上传照片被旋转

最近做项目发现在Iphone下,我们上传图片都会被翻转,最后查阅资料发现,的确是IOS的问题 不说过程,直接解决方法 iOS下,html方式使用<input type="file">上传图片,图片会被旋转.遇到这个问题js是无法解决的,html也没有相应的解决方案.只能放到后台去处理,将旋转的图片再旋转回来.iOS拍摄的图片提供了EXIF信息,Orientation值为6即顺时针90度,有了这个信息我们只需要逆时针旋转90度即可. 伪代码  //下面是php的伪代码 $ex

Struts上传照片到服务器

     关于Struts上传照片的功能,可能很多人都已经接触过了.我记得我之前做过一个上传Jar包的功能,那时候是用SpringMVC做的,先做一个类似于上传的功能,将Jar包添加进行之后解读Jar包,是因为要拿到Jar包里面的类名.属性名和中文注释,但是又没办法手动将所有Jar包拷贝到项目下,所以想着用上传的方式来实现.现在是要做上传照片.将用户的照片保存到服务器的文件夹下,如果该文件夹存在,则直接上传,如果不存在就创建该文件夹然后再上传. 前台代码: <pre name="code

Android使用XUtils框架上传照片(一张或多张)和文字,服务器接收照片和文字(无乱码)

Android上传图片,这里我使用了现在比较流行的XUtils框架,该框架可以实现文件上传.文件下载.图片缓存等等,有待研究. 下面是Android段上传的代码: xUtils.jar下载 String uploadHost="http://192.168.1.100:8080/ReceiveImgFromAndroid/ReceiveImgServlet"; //服务器接收地址 RequestParams params=new RequestParams(); params.addB

给图片添加手势,上传照片

.h #import <UIKit/UIKit.h> @interface RootViewController : UIViewController <UIActionSheetDelegate,UIImagePickerControllerDelegate,UINavigationControllerDelegate> { UIImageView *imageView; } .m - (void)viewDidLoad { [super viewDidLoad]; // Do

Django项目:CRM(客户关系管理系统)--61--51PerfectCRM实现CRM客户报名流程学生合同上传照片

1 # sales_views.py 2 # --------47PerfectCRM实现CRM客户报名流程-------- 3 from django.db import IntegrityError #主动捕捉错误信息 4 from django.shortcuts import render #页面返回 5 from crm import models #数据库 6 from bpm.bpm_auxiliary import bpm_forms #自定制 forms 7 8 # -----

flex利用webservice上传照片

WebService端代码 /// <summary> /// 上传文件到远程server /// </summary> /// <param name="fileBytes">文件流</param> /// <param name="fileName">文件名称</param> /// <returns>字符串</returns> [WebMethod(Descript

DevExpress(5): ASPxUploadControl上传照片后用ASPxBinaryImage展示

DevExpress版本14.1 效果图: 用户单击文件上传按钮,弹出文件选择窗口:选择文件后,自动上传到服务器保存至数据库(大头照文件一般不大,放数据库便于管理 :) 也可以保存至服务器上的文件夹):然后界面使用BinaryImage控件展示照片. 大体思路: (1)用户选择文件后如何自动上传?给UploadControl添加TextChanged客户端事件,当文本改变的时候,调用uploader的客户端UploadFile()方法 (2)服务端添加FileUploadComplete事件,可

调用相机并且上传照片的方法

#import "ViewController.h" #import "AFNetworking.h" @interface ViewController () <UIActionSheetDelegate,UIImagePickerControllerDelegate,UINavigationControllerDelegate> @property (weak, nonatomic) IBOutlet UIImageView *imageView;

webapi批量上传照片到ftp服务器(base64)

一段demo.做的时候根据自己的需求改造下 public HttpResponseMessage AddVisitNew(HttpRequestMessage request, CustomerVisitAddNewModel model) { return CreateHttpPostResponse<long>(request, () => { var res = customerVisitInfoService.AddVisitNew(model, CurrentUserId);